@mastra/server 1.0.4-alpha.1 → 1.0.4

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 (448) hide show
  1. package/CHANGELOG.md +6596 -0
  2. package/LICENSE.md +11 -42
  3. package/README.md +45 -137
  4. package/dist/chunk-2CLS2PYJ.js +1030 -0
  5. package/dist/chunk-2CLS2PYJ.js.map +1 -0
  6. package/dist/chunk-2CYGIE3E.js +1075 -0
  7. package/dist/chunk-2CYGIE3E.js.map +1 -0
  8. package/dist/chunk-33CKPQS4.cjs +175 -0
  9. package/dist/chunk-33CKPQS4.cjs.map +1 -0
  10. package/dist/chunk-3FEYUHHJ.js +116 -0
  11. package/dist/chunk-3FEYUHHJ.js.map +1 -0
  12. package/dist/chunk-3REGEJEN.js +250 -0
  13. package/dist/chunk-3REGEJEN.js.map +1 -0
  14. package/dist/chunk-3W67K7YE.js +13 -0
  15. package/dist/chunk-3W67K7YE.js.map +1 -0
  16. package/dist/chunk-4DJ7EJRB.cjs +186 -0
  17. package/dist/chunk-4DJ7EJRB.cjs.map +1 -0
  18. package/dist/chunk-4EYONQIW.cjs +82 -0
  19. package/dist/chunk-4EYONQIW.cjs.map +1 -0
  20. package/dist/chunk-4R2Z655M.js +1075 -0
  21. package/dist/chunk-4R2Z655M.js.map +1 -0
  22. package/dist/chunk-5NFRDYFN.js +77 -0
  23. package/dist/chunk-5NFRDYFN.js.map +1 -0
  24. package/dist/chunk-5VDI75UV.js +44 -0
  25. package/dist/chunk-5VDI75UV.js.map +1 -0
  26. package/dist/chunk-5W4RPVTK.cjs +49 -0
  27. package/dist/chunk-5W4RPVTK.cjs.map +1 -0
  28. package/dist/{chunk-FV45V6WC.cjs → chunk-64ITUOXI.cjs} +3 -7
  29. package/dist/chunk-64ITUOXI.cjs.map +1 -0
  30. package/dist/chunk-6MP2S6VI.cjs +211 -0
  31. package/dist/chunk-6MP2S6VI.cjs.map +1 -0
  32. package/dist/{chunk-TRDNDNGQ.js → chunk-6QWQZI4Q.js} +4 -7
  33. package/dist/chunk-6QWQZI4Q.js.map +1 -0
  34. package/dist/chunk-7S7ALPCY.js +225 -0
  35. package/dist/chunk-7S7ALPCY.js.map +1 -0
  36. package/dist/chunk-7XPMKW4Y.cjs +447 -0
  37. package/dist/chunk-7XPMKW4Y.cjs.map +1 -0
  38. package/dist/chunk-AQI6GLTN.cjs +2777 -0
  39. package/dist/chunk-AQI6GLTN.cjs.map +1 -0
  40. package/dist/chunk-AV3CN5ZR.cjs +326 -0
  41. package/dist/chunk-AV3CN5ZR.cjs.map +1 -0
  42. package/dist/chunk-AVRO3FIN.cjs +231 -0
  43. package/dist/chunk-AVRO3FIN.cjs.map +1 -0
  44. package/dist/chunk-BRI4GUZ2.cjs +280 -0
  45. package/dist/chunk-BRI4GUZ2.cjs.map +1 -0
  46. package/dist/chunk-CGIGPJRU.js +279 -0
  47. package/dist/chunk-CGIGPJRU.js.map +1 -0
  48. package/dist/chunk-CLAEGIP5.cjs +683 -0
  49. package/dist/chunk-CLAEGIP5.cjs.map +1 -0
  50. package/dist/chunk-DVSCJECS.js +250 -0
  51. package/dist/chunk-DVSCJECS.js.map +1 -0
  52. package/dist/chunk-EUBTCHQC.js +83 -0
  53. package/dist/chunk-EUBTCHQC.js.map +1 -0
  54. package/dist/chunk-FLLJIPD4.cjs +46 -0
  55. package/dist/chunk-FLLJIPD4.cjs.map +1 -0
  56. package/dist/chunk-FWSKVWS7.cjs +88 -0
  57. package/dist/chunk-FWSKVWS7.cjs.map +1 -0
  58. package/dist/chunk-G2AMUTU4.js +250 -0
  59. package/dist/chunk-G2AMUTU4.js.map +1 -0
  60. package/dist/chunk-GHQZIEPS.js +33118 -0
  61. package/dist/chunk-GHQZIEPS.js.map +1 -0
  62. package/dist/chunk-GNCALVLC.js +171 -0
  63. package/dist/chunk-GNCALVLC.js.map +1 -0
  64. package/dist/chunk-GU4EWMZB.cjs +769 -0
  65. package/dist/chunk-GU4EWMZB.cjs.map +1 -0
  66. package/dist/chunk-H34VRYSF.js +196 -0
  67. package/dist/chunk-H34VRYSF.js.map +1 -0
  68. package/dist/chunk-H66LLFDL.js +970 -0
  69. package/dist/chunk-H66LLFDL.js.map +1 -0
  70. package/dist/chunk-HCVDHEDD.cjs +33157 -0
  71. package/dist/chunk-HCVDHEDD.cjs.map +1 -0
  72. package/dist/chunk-HT4LP3BO.js +75 -0
  73. package/dist/chunk-HT4LP3BO.js.map +1 -0
  74. package/dist/chunk-I27H7BEB.js +439 -0
  75. package/dist/chunk-I27H7BEB.js.map +1 -0
  76. package/dist/chunk-IVGQTL3T.js +204 -0
  77. package/dist/chunk-IVGQTL3T.js.map +1 -0
  78. package/dist/chunk-KKY4MSZO.js +314 -0
  79. package/dist/chunk-KKY4MSZO.js.map +1 -0
  80. package/dist/chunk-L2E5RUVT.cjs +252 -0
  81. package/dist/chunk-L2E5RUVT.cjs.map +1 -0
  82. package/dist/chunk-LF2ZLOFP.js +767 -0
  83. package/dist/chunk-LF2ZLOFP.js.map +1 -0
  84. package/dist/chunk-LJ6YRVDI.cjs +15 -0
  85. package/dist/chunk-LJ6YRVDI.cjs.map +1 -0
  86. package/dist/chunk-LOA7RQYO.js +2774 -0
  87. package/dist/chunk-LOA7RQYO.js.map +1 -0
  88. package/dist/chunk-MCYD5LW7.cjs +90 -0
  89. package/dist/chunk-MCYD5LW7.cjs.map +1 -0
  90. package/dist/chunk-MPUVSOEU.cjs +346 -0
  91. package/dist/chunk-MPUVSOEU.cjs.map +1 -0
  92. package/dist/chunk-N4EIZSG2.js +180 -0
  93. package/dist/chunk-N4EIZSG2.js.map +1 -0
  94. package/dist/chunk-NUO7HPOV.cjs +1105 -0
  95. package/dist/chunk-NUO7HPOV.cjs.map +1 -0
  96. package/dist/chunk-O7I5CWRX.cjs +44 -0
  97. package/dist/chunk-O7I5CWRX.cjs.map +1 -0
  98. package/dist/chunk-ONN5EA7E.js +26 -0
  99. package/dist/chunk-ONN5EA7E.js.map +1 -0
  100. package/dist/chunk-P3H4AZKI.cjs +252 -0
  101. package/dist/chunk-P3H4AZKI.cjs.map +1 -0
  102. package/dist/chunk-PNZQCQY4.cjs +252 -0
  103. package/dist/chunk-PNZQCQY4.cjs.map +1 -0
  104. package/dist/chunk-PR4QN5HX.js +39 -0
  105. package/dist/chunk-PR4QN5HX.js.map +1 -0
  106. package/dist/chunk-QPFYN6B5.cjs +125 -0
  107. package/dist/chunk-QPFYN6B5.cjs.map +1 -0
  108. package/dist/chunk-SUKFO7UM.cjs +29 -0
  109. package/dist/chunk-SUKFO7UM.cjs.map +1 -0
  110. package/dist/chunk-T4SPG2GP.cjs +82 -0
  111. package/dist/chunk-T4SPG2GP.cjs.map +1 -0
  112. package/dist/chunk-TMS4LS2J.js +302 -0
  113. package/dist/chunk-TMS4LS2J.js.map +1 -0
  114. package/dist/chunk-UK4FZWNW.cjs +205 -0
  115. package/dist/chunk-UK4FZWNW.cjs.map +1 -0
  116. package/dist/chunk-VX3VN7FN.cjs +992 -0
  117. package/dist/chunk-VX3VN7FN.cjs.map +1 -0
  118. package/dist/chunk-WJ6DNHLW.cjs +312 -0
  119. package/dist/chunk-WJ6DNHLW.cjs.map +1 -0
  120. package/dist/chunk-WLGJVDH4.js +242 -0
  121. package/dist/chunk-WLGJVDH4.js.map +1 -0
  122. package/dist/chunk-XB27LCKO.js +328 -0
  123. package/dist/chunk-XB27LCKO.js.map +1 -0
  124. package/dist/chunk-XCEQ4GQW.cjs +289 -0
  125. package/dist/chunk-XCEQ4GQW.cjs.map +1 -0
  126. package/dist/chunk-XOUK3IYU.js +77 -0
  127. package/dist/chunk-XOUK3IYU.js.map +1 -0
  128. package/dist/chunk-XWGAT2DA.js +44 -0
  129. package/dist/chunk-XWGAT2DA.js.map +1 -0
  130. package/dist/chunk-YK63KHHB.cjs +1059 -0
  131. package/dist/chunk-YK63KHHB.cjs.map +1 -0
  132. package/dist/chunk-YN3FWKVQ.js +669 -0
  133. package/dist/chunk-YN3FWKVQ.js.map +1 -0
  134. package/dist/chunk-ZQ2G6QKS.cjs +1117 -0
  135. package/dist/chunk-ZQ2G6QKS.cjs.map +1 -0
  136. package/dist/dist-7NTDEVLP.cjs +928 -0
  137. package/dist/dist-7NTDEVLP.cjs.map +1 -0
  138. package/dist/dist-B5GMANA6.js +1147 -0
  139. package/dist/dist-B5GMANA6.js.map +1 -0
  140. package/dist/dist-EDO7GEGI.js +3 -0
  141. package/dist/dist-EDO7GEGI.js.map +1 -0
  142. package/dist/dist-OF24ZMHH.cjs +764 -0
  143. package/dist/dist-OF24ZMHH.cjs.map +1 -0
  144. package/dist/dist-P6YSNLL3.cjs +1150 -0
  145. package/dist/dist-P6YSNLL3.cjs.map +1 -0
  146. package/dist/dist-SMBO5KVB.js +937 -0
  147. package/dist/dist-SMBO5KVB.js.map +1 -0
  148. package/dist/dist-THPMW5QR.js +761 -0
  149. package/dist/dist-THPMW5QR.js.map +1 -0
  150. package/dist/dist-VZTG56X2.cjs +940 -0
  151. package/dist/dist-VZTG56X2.cjs.map +1 -0
  152. package/dist/dist-ZLC23RVC.cjs +16 -0
  153. package/dist/dist-ZLC23RVC.cjs.map +1 -0
  154. package/dist/dist-ZOZ6MHJH.js +925 -0
  155. package/dist/dist-ZOZ6MHJH.js.map +1 -0
  156. package/dist/docs/README.md +31 -0
  157. package/dist/docs/SKILL.md +32 -0
  158. package/dist/docs/SOURCE_MAP.json +6 -0
  159. package/dist/docs/server/01-custom-adapters.md +380 -0
  160. package/dist/docs/server/02-reference.md +819 -0
  161. package/dist/index.cjs +6 -0
  162. package/dist/index.cjs.map +1 -0
  163. package/dist/index.d.ts +1 -0
  164. package/dist/index.d.ts.map +1 -0
  165. package/dist/index.js +5 -0
  166. package/dist/index.js.map +1 -0
  167. package/dist/server/a2a/protocol.d.ts +8 -0
  168. package/dist/server/a2a/protocol.d.ts.map +1 -0
  169. package/dist/server/a2a/store.cjs +25 -0
  170. package/dist/server/a2a/store.cjs.map +1 -0
  171. package/dist/server/a2a/store.d.ts +14 -0
  172. package/dist/server/a2a/store.d.ts.map +1 -0
  173. package/dist/server/a2a/store.js +23 -0
  174. package/dist/server/a2a/store.js.map +1 -0
  175. package/dist/server/a2a/tasks.d.ts +20 -0
  176. package/dist/server/a2a/tasks.d.ts.map +1 -0
  177. package/dist/server/auth/defaults.d.ts +3 -0
  178. package/dist/server/auth/defaults.d.ts.map +1 -0
  179. package/dist/server/auth/helpers.d.ts +14 -0
  180. package/dist/server/auth/helpers.d.ts.map +1 -0
  181. package/dist/server/auth/index.cjs +137 -0
  182. package/dist/server/auth/index.cjs.map +1 -0
  183. package/dist/server/auth/index.d.ts +3 -0
  184. package/dist/server/auth/index.d.ts.map +1 -0
  185. package/dist/server/auth/index.js +127 -0
  186. package/dist/server/auth/index.js.map +1 -0
  187. package/dist/server/handlers/a2a.cjs +40 -0
  188. package/dist/server/handlers/a2a.cjs.map +1 -0
  189. package/dist/server/handlers/a2a.d.ts +550 -0
  190. package/dist/server/handlers/a2a.d.ts.map +1 -0
  191. package/dist/server/handlers/a2a.js +3 -0
  192. package/dist/server/handlers/a2a.js.map +1 -0
  193. package/dist/server/handlers/agent-builder.cjs +68 -0
  194. package/dist/server/handlers/agent-builder.cjs.map +1 -0
  195. package/dist/server/handlers/agent-builder.d.ts +632 -0
  196. package/dist/server/handlers/agent-builder.d.ts.map +1 -0
  197. package/dist/server/handlers/agent-builder.js +3 -0
  198. package/dist/server/handlers/agent-builder.js.map +1 -0
  199. package/dist/server/handlers/agents.cjs +99 -13
  200. package/dist/server/handlers/agents.cjs.map +1 -0
  201. package/dist/server/handlers/agents.d.ts +3387 -6
  202. package/dist/server/handlers/agents.d.ts.map +1 -0
  203. package/dist/server/handlers/agents.js +3 -1
  204. package/dist/server/handlers/agents.js.map +1 -0
  205. package/dist/server/handlers/error.cjs +8 -2
  206. package/dist/server/handlers/error.cjs.map +1 -0
  207. package/dist/server/handlers/error.d.ts +14 -1
  208. package/dist/server/handlers/error.d.ts.map +1 -0
  209. package/dist/server/handlers/error.js +3 -1
  210. package/dist/server/handlers/error.js.map +1 -0
  211. package/dist/server/handlers/logs.cjs +9 -7
  212. package/dist/server/handlers/logs.cjs.map +1 -0
  213. package/dist/server/handlers/logs.d.ts +142 -3
  214. package/dist/server/handlers/logs.d.ts.map +1 -0
  215. package/dist/server/handlers/logs.js +3 -1
  216. package/dist/server/handlers/logs.js.map +1 -0
  217. package/dist/server/handlers/mcp.cjs +40 -0
  218. package/dist/server/handlers/mcp.cjs.map +1 -0
  219. package/dist/server/handlers/mcp.d.ts +110 -0
  220. package/dist/server/handlers/mcp.d.ts.map +1 -0
  221. package/dist/server/handlers/mcp.js +3 -0
  222. package/dist/server/handlers/mcp.js.map +1 -0
  223. package/dist/server/handlers/memory.cjs +83 -17
  224. package/dist/server/handlers/memory.cjs.map +1 -0
  225. package/dist/server/handlers/memory.d.ts +1065 -8
  226. package/dist/server/handlers/memory.d.ts.map +1 -0
  227. package/dist/server/handlers/memory.js +3 -1
  228. package/dist/server/handlers/memory.js.map +1 -0
  229. package/dist/server/handlers/observability.cjs +24 -0
  230. package/dist/server/handlers/observability.cjs.map +1 -0
  231. package/dist/server/handlers/observability.d.ts +153 -0
  232. package/dist/server/handlers/observability.d.ts.map +1 -0
  233. package/dist/server/handlers/observability.js +3 -0
  234. package/dist/server/handlers/observability.js.map +1 -0
  235. package/dist/server/handlers/processors.cjs +20 -0
  236. package/dist/server/handlers/processors.cjs.map +1 -0
  237. package/dist/server/handlers/processors.d.ts +181 -0
  238. package/dist/server/handlers/processors.d.ts.map +1 -0
  239. package/dist/server/handlers/processors.js +3 -0
  240. package/dist/server/handlers/processors.js.map +1 -0
  241. package/dist/server/handlers/scores.cjs +32 -0
  242. package/dist/server/handlers/scores.cjs.map +1 -0
  243. package/dist/server/handlers/scores.d.ts +121 -0
  244. package/dist/server/handlers/scores.d.ts.map +1 -0
  245. package/dist/server/handlers/scores.js +3 -0
  246. package/dist/server/handlers/scores.js.map +1 -0
  247. package/dist/server/handlers/stored-agents.cjs +28 -0
  248. package/dist/server/handlers/stored-agents.cjs.map +1 -0
  249. package/dist/server/handlers/stored-agents.d.ts +289 -0
  250. package/dist/server/handlers/stored-agents.d.ts.map +1 -0
  251. package/dist/server/handlers/stored-agents.js +3 -0
  252. package/dist/server/handlers/stored-agents.js.map +1 -0
  253. package/dist/server/handlers/system.cjs +12 -0
  254. package/dist/server/handlers/system.cjs.map +1 -0
  255. package/dist/server/handlers/system.d.ts +7 -0
  256. package/dist/server/handlers/system.d.ts.map +1 -0
  257. package/dist/server/handlers/system.js +3 -0
  258. package/dist/server/handlers/system.js.map +1 -0
  259. package/dist/server/handlers/test-utils.cjs +15 -0
  260. package/dist/server/handlers/test-utils.cjs.map +1 -0
  261. package/dist/server/handlers/test-utils.d.ts +6 -0
  262. package/dist/server/handlers/test-utils.d.ts.map +1 -0
  263. package/dist/server/handlers/test-utils.js +13 -0
  264. package/dist/server/handlers/test-utils.js.map +1 -0
  265. package/dist/server/handlers/tools.cjs +15 -9
  266. package/dist/server/handlers/tools.cjs.map +1 -0
  267. package/dist/server/handlers/tools.d.ts +71 -4
  268. package/dist/server/handlers/tools.d.ts.map +1 -0
  269. package/dist/server/handlers/tools.js +3 -1
  270. package/dist/server/handlers/tools.js.map +1 -0
  271. package/dist/server/handlers/utils.cjs +16 -2
  272. package/dist/server/handlers/utils.cjs.map +1 -0
  273. package/dist/server/handlers/utils.d.ts +13 -1
  274. package/dist/server/handlers/utils.d.ts.map +1 -0
  275. package/dist/server/handlers/utils.js +3 -1
  276. package/dist/server/handlers/utils.js.map +1 -0
  277. package/dist/server/handlers/vector.cjs +33 -7
  278. package/dist/server/handlers/vector.cjs.map +1 -0
  279. package/dist/server/handlers/vector.d.ts +135 -6
  280. package/dist/server/handlers/vector.d.ts.map +1 -0
  281. package/dist/server/handlers/vector.js +3 -1
  282. package/dist/server/handlers/vector.js.map +1 -0
  283. package/dist/server/handlers/voice.cjs +25 -7
  284. package/dist/server/handlers/voice.cjs.map +1 -0
  285. package/dist/server/handlers/voice.d.ts +82 -3
  286. package/dist/server/handlers/voice.d.ts.map +1 -0
  287. package/dist/server/handlers/voice.js +3 -1
  288. package/dist/server/handlers/voice.js.map +1 -0
  289. package/dist/server/handlers/workflows.cjs +75 -21
  290. package/dist/server/handlers/workflows.cjs.map +1 -0
  291. package/dist/server/handlers/workflows.d.ts +994 -10
  292. package/dist/server/handlers/workflows.d.ts.map +1 -0
  293. package/dist/server/handlers/workflows.js +3 -1
  294. package/dist/server/handlers/workflows.js.map +1 -0
  295. package/dist/server/handlers.cjs +41 -24
  296. package/dist/server/handlers.cjs.map +1 -0
  297. package/dist/server/handlers.d.ts +13 -9
  298. package/dist/server/handlers.d.ts.map +1 -0
  299. package/dist/server/handlers.js +14 -9
  300. package/dist/server/handlers.js.map +1 -0
  301. package/dist/server/http-exception.d.ts +82 -0
  302. package/dist/server/http-exception.d.ts.map +1 -0
  303. package/dist/server/schemas/a2a.d.ts +786 -0
  304. package/dist/server/schemas/a2a.d.ts.map +1 -0
  305. package/dist/server/schemas/agent-builder.d.ts +225 -0
  306. package/dist/server/schemas/agent-builder.d.ts.map +1 -0
  307. package/dist/server/schemas/agents.d.ts +1804 -0
  308. package/dist/server/schemas/agents.d.ts.map +1 -0
  309. package/dist/server/schemas/common.d.ts +179 -0
  310. package/dist/server/schemas/common.d.ts.map +1 -0
  311. package/dist/server/schemas/logs.d.ts +124 -0
  312. package/dist/server/schemas/logs.d.ts.map +1 -0
  313. package/dist/server/schemas/mcp.d.ts +299 -0
  314. package/dist/server/schemas/mcp.d.ts.map +1 -0
  315. package/dist/server/schemas/memory.d.ts +1164 -0
  316. package/dist/server/schemas/memory.d.ts.map +1 -0
  317. package/dist/server/schemas/processors.d.ts +519 -0
  318. package/dist/server/schemas/processors.d.ts.map +1 -0
  319. package/dist/server/schemas/scores.d.ts +259 -0
  320. package/dist/server/schemas/scores.d.ts.map +1 -0
  321. package/dist/server/schemas/stored-agents.d.ts +792 -0
  322. package/dist/server/schemas/stored-agents.d.ts.map +1 -0
  323. package/dist/server/schemas/system.d.ts +36 -0
  324. package/dist/server/schemas/system.d.ts.map +1 -0
  325. package/dist/server/schemas/vectors.d.ts +107 -0
  326. package/dist/server/schemas/vectors.d.ts.map +1 -0
  327. package/dist/server/schemas/workflows.d.ts +863 -0
  328. package/dist/server/schemas/workflows.d.ts.map +1 -0
  329. package/dist/server/server-adapter/index.cjs +523 -0
  330. package/dist/server/server-adapter/index.cjs.map +1 -0
  331. package/dist/server/server-adapter/index.d.ts +109 -0
  332. package/dist/server/server-adapter/index.d.ts.map +1 -0
  333. package/dist/server/server-adapter/index.js +495 -0
  334. package/dist/server/server-adapter/index.js.map +1 -0
  335. package/dist/server/server-adapter/openapi-utils.d.ts +59 -0
  336. package/dist/server/server-adapter/openapi-utils.d.ts.map +1 -0
  337. package/dist/server/server-adapter/redact.d.ts +26 -0
  338. package/dist/server/server-adapter/redact.d.ts.map +1 -0
  339. package/dist/server/server-adapter/routes/a2a.d.ts +3 -0
  340. package/dist/server/server-adapter/routes/a2a.d.ts.map +1 -0
  341. package/dist/server/server-adapter/routes/agent-builder.d.ts +3 -0
  342. package/dist/server/server-adapter/routes/agent-builder.d.ts.map +1 -0
  343. package/dist/server/server-adapter/routes/agents.d.ts +3 -0
  344. package/dist/server/server-adapter/routes/agents.d.ts.map +1 -0
  345. package/dist/server/server-adapter/routes/index.d.ts +50 -0
  346. package/dist/server/server-adapter/routes/index.d.ts.map +1 -0
  347. package/dist/server/server-adapter/routes/legacy.d.ts +7 -0
  348. package/dist/server/server-adapter/routes/legacy.d.ts.map +1 -0
  349. package/dist/server/server-adapter/routes/logs.d.ts +3 -0
  350. package/dist/server/server-adapter/routes/logs.d.ts.map +1 -0
  351. package/dist/server/server-adapter/routes/mcp.d.ts +9 -0
  352. package/dist/server/server-adapter/routes/mcp.d.ts.map +1 -0
  353. package/dist/server/server-adapter/routes/memory.d.ts +3 -0
  354. package/dist/server/server-adapter/routes/memory.d.ts.map +1 -0
  355. package/dist/server/server-adapter/routes/observability.d.ts +3 -0
  356. package/dist/server/server-adapter/routes/observability.d.ts.map +1 -0
  357. package/dist/server/server-adapter/routes/processors.d.ts +3 -0
  358. package/dist/server/server-adapter/routes/processors.d.ts.map +1 -0
  359. package/dist/server/server-adapter/routes/route-builder.d.ts +111 -0
  360. package/dist/server/server-adapter/routes/route-builder.d.ts.map +1 -0
  361. package/dist/server/server-adapter/routes/scorers.d.ts +3 -0
  362. package/dist/server/server-adapter/routes/scorers.d.ts.map +1 -0
  363. package/dist/server/server-adapter/routes/stored-agents.d.ts +8 -0
  364. package/dist/server/server-adapter/routes/stored-agents.d.ts.map +1 -0
  365. package/dist/server/server-adapter/routes/stream-types.d.ts +10 -0
  366. package/dist/server/server-adapter/routes/stream-types.d.ts.map +1 -0
  367. package/dist/server/server-adapter/routes/system.d.ts +12 -0
  368. package/dist/server/server-adapter/routes/system.d.ts.map +1 -0
  369. package/dist/server/server-adapter/routes/tools.d.ts +3 -0
  370. package/dist/server/server-adapter/routes/tools.d.ts.map +1 -0
  371. package/dist/server/server-adapter/routes/vectors.d.ts +3 -0
  372. package/dist/server/server-adapter/routes/vectors.d.ts.map +1 -0
  373. package/dist/server/server-adapter/routes/workflows.d.ts +3 -0
  374. package/dist/server/server-adapter/routes/workflows.d.ts.map +1 -0
  375. package/dist/server/types.d.ts +10 -0
  376. package/dist/server/types.d.ts.map +1 -0
  377. package/dist/server/utils.d.ts +45 -0
  378. package/dist/server/utils.d.ts.map +1 -0
  379. package/dist/token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs +63 -0
  380. package/dist/token-6GSAFR2W-K2BTU23I-5WBYUIGY.cjs.map +1 -0
  381. package/dist/token-6GSAFR2W-K2BTU23I-NW33N3NU.js +61 -0
  382. package/dist/token-6GSAFR2W-K2BTU23I-NW33N3NU.js.map +1 -0
  383. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs +63 -0
  384. package/dist/token-6GSAFR2W-KVDFAJ2M-EPLMGMHT.cjs.map +1 -0
  385. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js +61 -0
  386. package/dist/token-6GSAFR2W-KVDFAJ2M-VW443KIA.js.map +1 -0
  387. package/dist/token-6GSAFR2W-VLY2XUPA-NCSASMWN.js +61 -0
  388. package/dist/token-6GSAFR2W-VLY2XUPA-NCSASMWN.js.map +1 -0
  389. package/dist/token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs +63 -0
  390. package/dist/token-6GSAFR2W-VLY2XUPA-RKITWXKR.cjs.map +1 -0
  391. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs +10 -0
  392. package/dist/token-util-NEHG7TUY-DJYRKLRD-6TH3ODCN.cjs.map +1 -0
  393. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js +8 -0
  394. package/dist/token-util-NEHG7TUY-DJYRKLRD-EACKYD4V.js.map +1 -0
  395. package/dist/token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs +10 -0
  396. package/dist/token-util-NEHG7TUY-KSXDO2NO-J6DEINGO.cjs.map +1 -0
  397. package/dist/token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js +8 -0
  398. package/dist/token-util-NEHG7TUY-KSXDO2NO-WH6I3PH3.js.map +1 -0
  399. package/dist/token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs +10 -0
  400. package/dist/token-util-NEHG7TUY-TIJ3LMSH-ANFISSXX.cjs.map +1 -0
  401. package/dist/token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js +8 -0
  402. package/dist/token-util-NEHG7TUY-TIJ3LMSH-SGVKOKXF.js.map +1 -0
  403. package/package.json +72 -20
  404. package/dist/_tsup-dts-rollup.d.cts +0 -573
  405. package/dist/_tsup-dts-rollup.d.ts +0 -573
  406. package/dist/chunk-2FJURXCL.cjs +0 -213
  407. package/dist/chunk-3AHQ5RGN.js +0 -11
  408. package/dist/chunk-3EJZQ6TQ.js +0 -49
  409. package/dist/chunk-3RVHWGWO.js +0 -95
  410. package/dist/chunk-4JINXASC.js +0 -120
  411. package/dist/chunk-67WTHYAV.js +0 -156
  412. package/dist/chunk-A7DF4ETD.cjs +0 -100
  413. package/dist/chunk-B64YROKU.cjs +0 -317
  414. package/dist/chunk-CWSDZEZG.cjs +0 -139
  415. package/dist/chunk-DVPP5S6I.js +0 -135
  416. package/dist/chunk-JLDXUWK7.cjs +0 -126
  417. package/dist/chunk-L7XE5QTW.js +0 -16
  418. package/dist/chunk-M56ECCHK.cjs +0 -128
  419. package/dist/chunk-OPP7H5TW.js +0 -305
  420. package/dist/chunk-PDC4ZBQW.cjs +0 -126
  421. package/dist/chunk-QH6XWSXP.cjs +0 -5579
  422. package/dist/chunk-QN4KF3BH.cjs +0 -18
  423. package/dist/chunk-RBQASTUP.js +0 -203
  424. package/dist/chunk-SKBVVI24.cjs +0 -54
  425. package/dist/chunk-UV4WTEH4.js +0 -120
  426. package/dist/chunk-VK6FX47H.js +0 -5576
  427. package/dist/chunk-YANVFOYA.js +0 -120
  428. package/dist/chunk-Z46X3YCB.cjs +0 -164
  429. package/dist/chunk-ZLBRQFDD.cjs +0 -13
  430. package/dist/index.d.cts +0 -1
  431. package/dist/server/handlers/agents.d.cts +0 -6
  432. package/dist/server/handlers/error.d.cts +0 -1
  433. package/dist/server/handlers/logs.d.cts +0 -3
  434. package/dist/server/handlers/memory.d.cts +0 -8
  435. package/dist/server/handlers/network.cjs +0 -22
  436. package/dist/server/handlers/network.d.cts +0 -4
  437. package/dist/server/handlers/network.d.ts +0 -4
  438. package/dist/server/handlers/network.js +0 -1
  439. package/dist/server/handlers/telemetry.cjs +0 -14
  440. package/dist/server/handlers/telemetry.d.cts +0 -2
  441. package/dist/server/handlers/telemetry.d.ts +0 -2
  442. package/dist/server/handlers/telemetry.js +0 -1
  443. package/dist/server/handlers/tools.d.cts +0 -4
  444. package/dist/server/handlers/utils.d.cts +0 -1
  445. package/dist/server/handlers/vector.d.cts +0 -6
  446. package/dist/server/handlers/voice.d.cts +0 -3
  447. package/dist/server/handlers/workflows.d.cts +0 -10
  448. package/dist/server/handlers.d.cts +0 -9
package/dist/index.cjs CHANGED
@@ -1,2 +1,8 @@
1
1
  'use strict';
2
2
 
3
+ // src/index.ts
4
+ throw new Error(`No exports are available from the top-level "@mastra/server" package.
5
+
6
+ Use specific subpath imports instead, e.g. "@mastra/server/handlers" or "@mastra/server/handlers/tools".`);
7
+ //# sourceMappingURL=index.cjs.map
8
+ //# sourceMappingURL=index.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";;;AAAA,MAAM,IAAI,KAAA,CAAM,CAAA;;AAAA,wGAAA,CAEyF,CAAA","file":"index.cjs","sourcesContent":["throw new Error(`No exports are available from the top-level \"@mastra/server\" package.\n\nUse specific subpath imports instead, e.g. \"@mastra/server/handlers\" or \"@mastra/server/handlers/tools\".`);\n"]}
package/dist/index.d.ts CHANGED
@@ -1 +1,2 @@
1
1
  export {};
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":""}
package/dist/index.js CHANGED
@@ -1 +1,6 @@
1
+ // src/index.ts
2
+ throw new Error(`No exports are available from the top-level "@mastra/server" package.
1
3
 
4
+ Use specific subpath imports instead, e.g. "@mastra/server/handlers" or "@mastra/server/handlers/tools".`);
5
+ //# sourceMappingURL=index.js.map
6
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/index.ts"],"names":[],"mappings":";AAAA,MAAM,IAAI,KAAA,CAAM,CAAA;;AAAA,wGAAA,CAEyF,CAAA","file":"index.js","sourcesContent":["throw new Error(`No exports are available from the top-level \"@mastra/server\" package.\n\nUse specific subpath imports instead, e.g. \"@mastra/server/handlers\" or \"@mastra/server/handlers/tools\".`);\n"]}
@@ -0,0 +1,8 @@
1
+ import type { JSONRPCError, JSONRPCResponse, Message } from '@mastra/core/a2a';
2
+ import type { CoreMessage } from '@mastra/core/llm';
3
+ import type { IMastraLogger } from '@mastra/core/logger';
4
+ export declare function normalizeError(error: any, reqId: number | string | null, taskId?: string, logger?: IMastraLogger): JSONRPCResponse<null, unknown>;
5
+ export declare function createErrorResponse(id: number | string | null, error: JSONRPCError<unknown>): JSONRPCResponse<null, unknown>;
6
+ export declare function createSuccessResponse<T>(id: number | string | null, result: T): JSONRPCResponse<T>;
7
+ export declare function convertToCoreMessage(message: Message): CoreMessage;
8
+ //# sourceMappingURL=protocol.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../../src/server/a2a/protocol.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAQ,MAAM,kBAAkB,CAAC;AACrF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEzD,wBAAgB,cAAc,CAC5B,KAAK,EAAE,GAAG,EACV,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC7B,MAAM,CAAC,EAAE,MAAM,EACf,MAAM,CAAC,EAAE,aAAa,GACrB,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAoBhC;AAED,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAC1B,KAAK,EAAE,YAAY,CAAC,OAAO,CAAC,GAC3B,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAOhC;AAED,wBAAgB,qBAAqB,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,eAAe,CAAC,CAAC,CAAC,CAWlG;AAED,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,WAAW,CAKlE"}
@@ -0,0 +1,25 @@
1
+ 'use strict';
2
+
3
+ // src/server/a2a/store.ts
4
+ var InMemoryTaskStore = class {
5
+ store = /* @__PURE__ */ new Map();
6
+ activeCancellations = /* @__PURE__ */ new Set();
7
+ async load({ agentId, taskId }) {
8
+ const entry = this.store.get(`${agentId}-${taskId}`);
9
+ if (!entry) {
10
+ return null;
11
+ }
12
+ return { ...entry };
13
+ }
14
+ async save({ agentId, data }) {
15
+ const key = `${agentId}-${data.id}`;
16
+ if (!data.id) {
17
+ throw new Error("Task ID is required");
18
+ }
19
+ this.store.set(key, { ...data });
20
+ }
21
+ };
22
+
23
+ exports.InMemoryTaskStore = InMemoryTaskStore;
24
+ //# sourceMappingURL=store.cjs.map
25
+ //# sourceMappingURL=store.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/server/a2a/store.ts"],"names":[],"mappings":";;;AAEO,IAAM,oBAAN,MAAwB;AAAA,EACrB,KAAA,uBAA+B,GAAA,EAAI;AAAA,EACpC,mBAAA,uBAA0B,GAAA,EAAY;AAAA,EAE7C,MAAM,IAAA,CAAK,EAAE,OAAA,EAAS,QAAO,EAA8D;AACzF,IAAA,MAAM,KAAA,GAAQ,KAAK,KAAA,CAAM,GAAA,CAAI,GAAG,OAAO,CAAA,CAAA,EAAI,MAAM,CAAA,CAAE,CAAA;AAEnD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,OAAO,IAAA;AAAA,IACT;AAGA,IAAA,OAAO,EAAE,GAAG,KAAA,EAAM;AAAA,EACpB;AAAA,EAEA,MAAM,IAAA,CAAK,EAAE,OAAA,EAAS,MAAK,EAAmD;AAE5E,IAAA,MAAM,GAAA,GAAM,CAAA,EAAG,OAAO,CAAA,CAAA,EAAI,KAAK,EAAE,CAAA,CAAA;AACjC,IAAA,IAAI,CAAC,KAAK,EAAA,EAAI;AACZ,MAAA,MAAM,IAAI,MAAM,qBAAqB,CAAA;AAAA,IACvC;AACA,IAAA,IAAA,CAAK,MAAM,GAAA,CAAI,GAAA,EAAK,EAAE,GAAG,MAAM,CAAA;AAAA,EACjC;AACF","file":"store.cjs","sourcesContent":["import type { Task } from '@mastra/core/a2a';\n\nexport class InMemoryTaskStore {\n private store: Map<string, Task> = new Map();\n public activeCancellations = new Set<string>();\n\n async load({ agentId, taskId }: { agentId: string; taskId: string }): Promise<Task | null> {\n const entry = this.store.get(`${agentId}-${taskId}`);\n\n if (!entry) {\n return null;\n }\n\n // Return copies to prevent external mutation\n return { ...entry };\n }\n\n async save({ agentId, data }: { agentId: string; data: Task }): Promise<void> {\n // Store copies to prevent internal mutation if caller reuses objects\n const key = `${agentId}-${data.id}`;\n if (!data.id) {\n throw new Error('Task ID is required');\n }\n this.store.set(key, { ...data });\n }\n}\n"]}
@@ -0,0 +1,14 @@
1
+ import type { Task } from '@mastra/core/a2a';
2
+ export declare class InMemoryTaskStore {
3
+ private store;
4
+ activeCancellations: Set<string>;
5
+ load({ agentId, taskId }: {
6
+ agentId: string;
7
+ taskId: string;
8
+ }): Promise<Task | null>;
9
+ save({ agentId, data }: {
10
+ agentId: string;
11
+ data: Task;
12
+ }): Promise<void>;
13
+ }
14
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../../../src/server/a2a/store.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,kBAAkB,CAAC;AAE7C,qBAAa,iBAAiB;IAC5B,OAAO,CAAC,KAAK,CAAgC;IACtC,mBAAmB,cAAqB;IAEzC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,GAAG,IAAI,CAAC;IAWpF,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,IAAI,CAAA;KAAE,GAAG,OAAO,CAAC,IAAI,CAAC;CAQ9E"}
@@ -0,0 +1,23 @@
1
+ // src/server/a2a/store.ts
2
+ var InMemoryTaskStore = class {
3
+ store = /* @__PURE__ */ new Map();
4
+ activeCancellations = /* @__PURE__ */ new Set();
5
+ async load({ agentId, taskId }) {
6
+ const entry = this.store.get(`${agentId}-${taskId}`);
7
+ if (!entry) {
8
+ return null;
9
+ }
10
+ return { ...entry };
11
+ }
12
+ async save({ agentId, data }) {
13
+ const key = `${agentId}-${data.id}`;
14
+ if (!data.id) {
15
+ throw new Error("Task ID is required");
16
+ }
17
+ this.store.set(key, { ...data });
18
+ }
19
+ };
20
+
21
+ export { InMemoryTaskStore };
22
+ //# sourceMappingURL=store.js.map
23
+ //# sourceMappingURL=store.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/server/a2a/store.ts"],"names":[],"mappings":";AAEO,IAAM,oBAAN,MAAwB;AAAA,EACrB,KAAA,uBAA+B,GAAA,EAAI;AAAA,EACpC,mBAAA,uBAA0B,GAAA,EAAY;AAAA,EAE7C,MAAM,IAAA,CAAK,EAAE,OAAA,EAAS,QAAO,EAA8D;AACzF,IAAA,MAAM,KAAA,GAAQ,KAAK,KAAA,CAAM,GAAA,CAAI,GAAG,OAAO,CAAA,CAAA,EAAI,MAAM,CAAA,CAAE,CAAA;AAEnD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,OAAO,IAAA;AAAA,IACT;AAGA,IAAA,OAAO,EAAE,GAAG,KAAA,EAAM;AAAA,EACpB;AAAA,EAEA,MAAM,IAAA,CAAK,EAAE,OAAA,EAAS,MAAK,EAAmD;AAE5E,IAAA,MAAM,GAAA,GAAM,CAAA,EAAG,OAAO,CAAA,CAAA,EAAI,KAAK,EAAE,CAAA,CAAA;AACjC,IAAA,IAAI,CAAC,KAAK,EAAA,EAAI;AACZ,MAAA,MAAM,IAAI,MAAM,qBAAqB,CAAA;AAAA,IACvC;AACA,IAAA,IAAA,CAAK,MAAM,GAAA,CAAI,GAAA,EAAK,EAAE,GAAG,MAAM,CAAA;AAAA,EACjC;AACF","file":"store.js","sourcesContent":["import type { Task } from '@mastra/core/a2a';\n\nexport class InMemoryTaskStore {\n private store: Map<string, Task> = new Map();\n public activeCancellations = new Set<string>();\n\n async load({ agentId, taskId }: { agentId: string; taskId: string }): Promise<Task | null> {\n const entry = this.store.get(`${agentId}-${taskId}`);\n\n if (!entry) {\n return null;\n }\n\n // Return copies to prevent external mutation\n return { ...entry };\n }\n\n async save({ agentId, data }: { agentId: string; data: Task }): Promise<void> {\n // Store copies to prevent internal mutation if caller reuses objects\n const key = `${agentId}-${data.id}`;\n if (!data.id) {\n throw new Error('Task ID is required');\n }\n this.store.set(key, { ...data });\n }\n}\n"]}
@@ -0,0 +1,20 @@
1
+ import type { Message, Task, TaskStatus, TaskContext, TaskArtifactUpdateEvent } from '@mastra/core/a2a';
2
+ import type { IMastraLogger } from '@mastra/core/logger';
3
+ import type { InMemoryTaskStore } from './store.js';
4
+ export declare function applyUpdateToTask(current: Task, update: Omit<TaskStatus, 'timestamp'> | TaskArtifactUpdateEvent): Task;
5
+ export declare function loadOrCreateTask({ agentId, taskId, taskStore, message, contextId, metadata, logger, }: {
6
+ agentId: string;
7
+ taskId: string;
8
+ taskStore: InMemoryTaskStore;
9
+ message: Message;
10
+ contextId?: string;
11
+ metadata?: Record<string, unknown>;
12
+ logger?: IMastraLogger;
13
+ }): Promise<Task>;
14
+ export declare function createTaskContext({ task, userMessage, history, activeCancellations, }: {
15
+ task: Task;
16
+ userMessage: Message;
17
+ history: Message[];
18
+ activeCancellations: Set<string>;
19
+ }): TaskContext;
20
+ //# sourceMappingURL=tasks.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tasks.d.ts","sourceRoot":"","sources":["../../../src/server/a2a/tasks.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,OAAO,EACP,IAAI,EAEJ,UAAU,EACV,WAAW,EACX,uBAAuB,EAExB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAUjD,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,IAAI,EACb,MAAM,EAAE,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,GAAG,uBAAuB,GAC9D,IAAI,CA8CN;AAED,wBAAsB,gBAAgB,CAAC,EACrC,OAAO,EACP,MAAM,EACN,SAAS,EACT,OAAO,EACP,SAAS,EACT,QAAQ,EACR,MAAM,GACP,EAAE;IACD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,iBAAiB,CAAC;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB,GAAG,OAAO,CAAC,IAAI,CAAC,CAoDhB;AAED,wBAAgB,iBAAiB,CAAC,EAChC,IAAI,EACJ,WAAW,EACX,OAAO,EACP,mBAAmB,GACpB,EAAE;IACD,IAAI,EAAE,IAAI,CAAC;IACX,WAAW,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,OAAO,EAAE,CAAC;IACnB,mBAAmB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;CAClC,GAAG,WAAW,CAOd"}
@@ -0,0 +1,3 @@
1
+ import type { MastraAuthConfig } from '@mastra/core/server';
2
+ export declare const defaultAuthConfig: MastraAuthConfig;
3
+ //# sourceMappingURL=defaults.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaults.d.ts","sourceRoot":"","sources":["../../../src/server/auth/defaults.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAG5D,eAAO,MAAM,iBAAiB,EAAE,gBAsB/B,CAAC"}
@@ -0,0 +1,14 @@
1
+ import type { MastraAuthConfig } from '@mastra/core/server';
2
+ /**
3
+ * Check if request is from dev playground
4
+ * @param getHeader - Function to get header value from request
5
+ */
6
+ export declare const isDevPlaygroundRequest: (path: string, method: string, getHeader: (name: string) => string | undefined, authConfig: MastraAuthConfig) => boolean;
7
+ export declare const isCustomRoutePublic: (path: string, method: string, customRouteAuthConfig?: Map<string, boolean>) => boolean;
8
+ export declare const isProtectedPath: (path: string, method: string, authConfig: MastraAuthConfig, customRouteAuthConfig?: Map<string, boolean>) => boolean;
9
+ export declare const canAccessPublicly: (path: string, method: string, authConfig: MastraAuthConfig) => boolean;
10
+ export declare const pathMatchesPattern: (path: string, pattern: string) => boolean;
11
+ export declare const pathMatchesRule: (path: string, rulePath: string | RegExp | string[] | undefined) => boolean;
12
+ export declare const matchesOrIncludes: (values: string | string[], value: string) => boolean;
13
+ export declare const checkRules: (rules: MastraAuthConfig["rules"], path: string, method: string, user: unknown) => Promise<boolean>;
14
+ //# sourceMappingURL=helpers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../../src/server/auth/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAI5D;;;GAGG;AACH,eAAO,MAAM,sBAAsB,GACjC,MAAM,MAAM,EACZ,QAAQ,MAAM,EACd,WAAW,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,EAC/C,YAAY,gBAAgB,KAC3B,OAMF,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,MAAM,MAAM,EACZ,QAAQ,MAAM,EACd,wBAAwB,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3C,OAkBF,CAAC;AAEF,eAAO,MAAM,eAAe,GAC1B,MAAM,MAAM,EACZ,QAAQ,MAAM,EACd,YAAY,gBAAgB,EAC5B,wBAAwB,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,KAC3C,OAGF,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,MAAM,MAAM,EAAE,QAAQ,MAAM,EAAE,YAAY,gBAAgB,KAAG,OAK9F,CAAC;AAiCF,eAAO,MAAM,kBAAkB,GAAI,MAAM,MAAM,EAAE,SAAS,MAAM,KAAG,OAQlE,CAAC;AAEF,eAAO,MAAM,eAAe,GAAI,MAAM,MAAM,EAAE,UAAU,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,KAAG,OAgBhG,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAAI,QAAQ,MAAM,GAAG,MAAM,EAAE,EAAE,OAAO,MAAM,KAAG,OAU5E,CAAC;AAGF,eAAO,MAAM,UAAU,GACrB,OAAO,gBAAgB,CAAC,OAAO,CAAC,EAChC,MAAM,MAAM,EACZ,QAAQ,MAAM,EACd,MAAM,OAAO,KACZ,OAAO,CAAC,OAAO,CA+BjB,CAAC"}
@@ -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"]}
@@ -0,0 +1,40 @@
1
+ 'use strict';
2
+
3
+ var chunkCLAEGIP5_cjs = require('../../chunk-CLAEGIP5.cjs');
4
+
5
+
6
+
7
+ Object.defineProperty(exports, "AGENT_EXECUTION_ROUTE", {
8
+ enumerable: true,
9
+ get: function () { return chunkCLAEGIP5_cjs.AGENT_EXECUTION_ROUTE; }
10
+ });
11
+ Object.defineProperty(exports, "GET_AGENT_CARD_ROUTE", {
12
+ enumerable: true,
13
+ get: function () { return chunkCLAEGIP5_cjs.GET_AGENT_CARD_ROUTE; }
14
+ });
15
+ Object.defineProperty(exports, "getAgentCardByIdHandler", {
16
+ enumerable: true,
17
+ get: function () { return chunkCLAEGIP5_cjs.getAgentCardByIdHandler; }
18
+ });
19
+ Object.defineProperty(exports, "getAgentExecutionHandler", {
20
+ enumerable: true,
21
+ get: function () { return chunkCLAEGIP5_cjs.getAgentExecutionHandler; }
22
+ });
23
+ Object.defineProperty(exports, "handleMessageSend", {
24
+ enumerable: true,
25
+ get: function () { return chunkCLAEGIP5_cjs.handleMessageSend; }
26
+ });
27
+ Object.defineProperty(exports, "handleMessageStream", {
28
+ enumerable: true,
29
+ get: function () { return chunkCLAEGIP5_cjs.handleMessageStream; }
30
+ });
31
+ Object.defineProperty(exports, "handleTaskCancel", {
32
+ enumerable: true,
33
+ get: function () { return chunkCLAEGIP5_cjs.handleTaskCancel; }
34
+ });
35
+ Object.defineProperty(exports, "handleTaskGet", {
36
+ enumerable: true,
37
+ get: function () { return chunkCLAEGIP5_cjs.handleTaskGet; }
38
+ });
39
+ //# sourceMappingURL=a2a.cjs.map
40
+ //# sourceMappingURL=a2a.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","file":"a2a.cjs"}