@mastra/server 0.0.0-consolidate-changesets-20250904042643 → 0.0.0-createToolOptions-20250926094418

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 (223) hide show
  1. package/CHANGELOG.md +363 -4
  2. package/README.md +0 -5
  3. package/dist/{chunk-GUI3CROV.cjs → chunk-2GDLSAVJ.cjs} +60 -22
  4. package/dist/chunk-2GDLSAVJ.cjs.map +1 -0
  5. package/dist/{chunk-OW4FX5TS.js → chunk-4QCXUEAT.js} +10 -3
  6. package/dist/chunk-4QCXUEAT.js.map +1 -0
  7. package/dist/chunk-4RRMWXQ2.js +3522 -0
  8. package/dist/chunk-4RRMWXQ2.js.map +1 -0
  9. package/dist/chunk-5DP5XZH6.cjs +928 -0
  10. package/dist/chunk-5DP5XZH6.cjs.map +1 -0
  11. package/dist/{chunk-R7NOGUZG.js → chunk-5KRXONRF.js} +43 -4
  12. package/dist/chunk-5KRXONRF.js.map +1 -0
  13. package/dist/{chunk-L265APUD.cjs → chunk-5N724Q2T.cjs} +43 -3
  14. package/dist/chunk-5N724Q2T.cjs.map +1 -0
  15. package/dist/chunk-66YYHFGF.js +761 -0
  16. package/dist/chunk-66YYHFGF.js.map +1 -0
  17. package/dist/chunk-6GMFZ5LK.js +2774 -0
  18. package/dist/chunk-6GMFZ5LK.js.map +1 -0
  19. package/dist/{chunk-5QUKZCEF.js → chunk-6IJWRJZE.js} +4 -3
  20. package/dist/chunk-6IJWRJZE.js.map +1 -0
  21. package/dist/chunk-743UIDHI.cjs +2013 -0
  22. package/dist/chunk-743UIDHI.cjs.map +1 -0
  23. package/dist/{chunk-ROA7BCHD.js → chunk-A3AL7EWJ.js} +3 -3
  24. package/dist/{chunk-ROA7BCHD.js.map → chunk-A3AL7EWJ.js.map} +1 -1
  25. package/dist/chunk-AK2FXLLB.cjs +849 -0
  26. package/dist/chunk-AK2FXLLB.cjs.map +1 -0
  27. package/dist/chunk-BOVFMBXY.js +607 -0
  28. package/dist/chunk-BOVFMBXY.js.map +1 -0
  29. package/dist/{chunk-E64XEGXM.cjs → chunk-CML3EOO5.cjs} +96 -107
  30. package/dist/chunk-CML3EOO5.cjs.map +1 -0
  31. package/dist/chunk-EMNGA4R4.js +845 -0
  32. package/dist/chunk-EMNGA4R4.js.map +1 -0
  33. package/dist/chunk-FALVL2VV.cjs +3525 -0
  34. package/dist/chunk-FALVL2VV.cjs.map +1 -0
  35. package/dist/chunk-FQNT7PI4.js +937 -0
  36. package/dist/chunk-FQNT7PI4.js.map +1 -0
  37. package/dist/{chunk-4QSNRCOT.cjs → chunk-G4PUALCE.cjs} +10 -2
  38. package/dist/chunk-G4PUALCE.cjs.map +1 -0
  39. package/dist/chunk-HJQKWRKQ.cjs +764 -0
  40. package/dist/chunk-HJQKWRKQ.cjs.map +1 -0
  41. package/dist/chunk-HVBBFCDH.cjs +2321 -0
  42. package/dist/chunk-HVBBFCDH.cjs.map +1 -0
  43. package/dist/chunk-HZJRQ5L3.cjs +1411 -0
  44. package/dist/chunk-HZJRQ5L3.cjs.map +1 -0
  45. package/dist/chunk-IGFMAZZ5.cjs +1150 -0
  46. package/dist/chunk-IGFMAZZ5.cjs.map +1 -0
  47. package/dist/chunk-IOQGI4ML.js +931 -0
  48. package/dist/chunk-IOQGI4ML.js.map +1 -0
  49. package/dist/{chunk-7QEJ5QG5.js → chunk-IYJW2OVQ.js} +60 -22
  50. package/dist/chunk-IYJW2OVQ.js.map +1 -0
  51. package/dist/{chunk-QBWF6U7Z.js → chunk-JRDEOHAJ.js} +20 -12
  52. package/dist/chunk-JRDEOHAJ.js.map +1 -0
  53. package/dist/{chunk-A3ZHTDWB.js → chunk-KM7EJKXV.js} +9 -5
  54. package/dist/chunk-KM7EJKXV.js.map +1 -0
  55. package/dist/{chunk-YFLNLDQV.cjs → chunk-LJFAAEU7.cjs} +10 -6
  56. package/dist/chunk-LJFAAEU7.cjs.map +1 -0
  57. package/dist/chunk-LYPU75T6.js +1147 -0
  58. package/dist/chunk-LYPU75T6.js.map +1 -0
  59. package/dist/chunk-N5ID53SA.js +15712 -0
  60. package/dist/chunk-N5ID53SA.js.map +1 -0
  61. package/dist/chunk-N7F33WAD.js +2290 -0
  62. package/dist/chunk-N7F33WAD.js.map +1 -0
  63. package/dist/chunk-NG5IVLEZ.js +1012 -0
  64. package/dist/chunk-NG5IVLEZ.js.map +1 -0
  65. package/dist/{chunk-OZGPYA7A.js → chunk-NH7XUTIO.js} +93 -104
  66. package/dist/chunk-NH7XUTIO.js.map +1 -0
  67. package/dist/{chunk-KLCYAQBL.cjs → chunk-NLWACBE7.cjs} +21 -13
  68. package/dist/chunk-NLWACBE7.cjs.map +1 -0
  69. package/dist/chunk-OGW6HHVI.js +1408 -0
  70. package/dist/chunk-OGW6HHVI.js.map +1 -0
  71. package/dist/{chunk-3THIIWWW.cjs → chunk-OPI3FZYH.cjs} +4 -3
  72. package/dist/chunk-OPI3FZYH.cjs.map +1 -0
  73. package/dist/{chunk-UVKXRPMV.cjs → chunk-OZLRIVC4.cjs} +14 -14
  74. package/dist/{chunk-UVKXRPMV.cjs.map → chunk-OZLRIVC4.cjs.map} +1 -1
  75. package/dist/chunk-P7CIEIJ3.js +925 -0
  76. package/dist/chunk-P7CIEIJ3.js.map +1 -0
  77. package/dist/chunk-P7RBMCBE.cjs +934 -0
  78. package/dist/chunk-P7RBMCBE.cjs.map +1 -0
  79. package/dist/chunk-PPYGWINI.cjs +2777 -0
  80. package/dist/chunk-PPYGWINI.cjs.map +1 -0
  81. package/dist/chunk-QNWXF57L.cjs +15748 -0
  82. package/dist/chunk-QNWXF57L.cjs.map +1 -0
  83. package/dist/chunk-RCHEPTZZ.js +2006 -0
  84. package/dist/chunk-RCHEPTZZ.js.map +1 -0
  85. package/dist/chunk-SIGXR3JT.cjs +1043 -0
  86. package/dist/chunk-SIGXR3JT.cjs.map +1 -0
  87. package/dist/{chunk-NPE3X7FQ.cjs → chunk-SPLSYTYW.cjs} +5 -5
  88. package/dist/{chunk-NPE3X7FQ.cjs.map → chunk-SPLSYTYW.cjs.map} +1 -1
  89. package/dist/{chunk-LUPY3MQY.js → chunk-SQY4T6EJ.js} +3 -3
  90. package/dist/{chunk-LUPY3MQY.js.map → chunk-SQY4T6EJ.js.map} +1 -1
  91. package/dist/chunk-SXENNNR7.cjs +625 -0
  92. package/dist/chunk-SXENNNR7.cjs.map +1 -0
  93. package/dist/chunk-TVSIG4JE.cjs +940 -0
  94. package/dist/chunk-TVSIG4JE.cjs.map +1 -0
  95. package/dist/chunk-VY4ENABS.cjs +135 -0
  96. package/dist/chunk-VY4ENABS.cjs.map +1 -0
  97. package/dist/chunk-YWOK4F5A.js +131 -0
  98. package/dist/chunk-YWOK4F5A.js.map +1 -0
  99. package/dist/dist-26HWEQY6.js +3 -0
  100. package/dist/dist-26HWEQY6.js.map +1 -0
  101. package/dist/dist-3A5DXB37.cjs +20 -0
  102. package/dist/dist-3A5DXB37.cjs.map +1 -0
  103. package/dist/dist-3SJKQJGY.cjs +16 -0
  104. package/dist/dist-3SJKQJGY.cjs.map +1 -0
  105. package/dist/dist-4ZQSPE5K.js +3 -0
  106. package/dist/dist-4ZQSPE5K.js.map +1 -0
  107. package/dist/dist-5W5QNRTD.js +3 -0
  108. package/dist/dist-5W5QNRTD.js.map +1 -0
  109. package/dist/dist-653SRMPL.js +3 -0
  110. package/dist/dist-653SRMPL.js.map +1 -0
  111. package/dist/dist-6U6EFC5C.cjs +16 -0
  112. package/dist/dist-6U6EFC5C.cjs.map +1 -0
  113. package/dist/dist-7IHNNYMF.cjs +16 -0
  114. package/dist/dist-7IHNNYMF.cjs.map +1 -0
  115. package/dist/dist-B5IPRF6W.js +3 -0
  116. package/dist/dist-B5IPRF6W.js.map +1 -0
  117. package/dist/dist-EOMYFT4Y.cjs +16 -0
  118. package/dist/dist-EOMYFT4Y.cjs.map +1 -0
  119. package/dist/dist-EZZMMMNT.cjs +16 -0
  120. package/dist/dist-EZZMMMNT.cjs.map +1 -0
  121. package/dist/dist-F2ET4MNO.cjs +16 -0
  122. package/dist/dist-F2ET4MNO.cjs.map +1 -0
  123. package/dist/dist-H64VX6DE.js +3 -0
  124. package/dist/dist-H64VX6DE.js.map +1 -0
  125. package/dist/dist-HY7RMLJQ.cjs +16 -0
  126. package/dist/dist-HY7RMLJQ.cjs.map +1 -0
  127. package/dist/dist-M6S4P3FJ.js +3 -0
  128. package/dist/dist-M6S4P3FJ.js.map +1 -0
  129. package/dist/dist-NR7QSCQT.js +3 -0
  130. package/dist/dist-NR7QSCQT.js.map +1 -0
  131. package/dist/dist-QLFMCMCX.js +3 -0
  132. package/dist/dist-QLFMCMCX.js.map +1 -0
  133. package/dist/dist-UY46BFRP.js +3 -0
  134. package/dist/dist-UY46BFRP.js.map +1 -0
  135. package/dist/dist-WCQDRTIV.cjs +16 -0
  136. package/dist/dist-WCQDRTIV.cjs.map +1 -0
  137. package/dist/dist-WKYB3LTJ.cjs +16 -0
  138. package/dist/dist-WKYB3LTJ.cjs.map +1 -0
  139. package/dist/index.cjs +4 -0
  140. package/dist/index.cjs.map +1 -1
  141. package/dist/index.js +3 -0
  142. package/dist/index.js.map +1 -1
  143. package/dist/server/handlers/a2a.cjs +7 -7
  144. package/dist/server/handlers/a2a.d.ts.map +1 -1
  145. package/dist/server/handlers/a2a.js +1 -1
  146. package/dist/server/handlers/agent-builder.cjs +16 -16
  147. package/dist/server/handlers/agent-builder.d.ts +5 -4
  148. package/dist/server/handlers/agent-builder.d.ts.map +1 -1
  149. package/dist/server/handlers/agent-builder.js +1 -1
  150. package/dist/server/handlers/agents.cjs +26 -14
  151. package/dist/server/handlers/agents.d.ts +64 -8
  152. package/dist/server/handlers/agents.d.ts.map +1 -1
  153. package/dist/server/handlers/agents.js +1 -1
  154. package/dist/server/handlers/logs.cjs +4 -4
  155. package/dist/server/handlers/logs.js +1 -1
  156. package/dist/server/handlers/memory.cjs +16 -16
  157. package/dist/server/handlers/memory.js +1 -1
  158. package/dist/server/handlers/observability.cjs +7 -3
  159. package/dist/server/handlers/observability.d.ts +18 -0
  160. package/dist/server/handlers/observability.d.ts.map +1 -1
  161. package/dist/server/handlers/observability.js +1 -1
  162. package/dist/server/handlers/scores.cjs +7 -7
  163. package/dist/server/handlers/scores.d.ts +208 -6
  164. package/dist/server/handlers/scores.d.ts.map +1 -1
  165. package/dist/server/handlers/scores.js +1 -1
  166. package/dist/server/handlers/tools.cjs +6 -6
  167. package/dist/server/handlers/tools.d.ts.map +1 -1
  168. package/dist/server/handlers/tools.js +1 -1
  169. package/dist/server/handlers/utils.cjs +6 -2
  170. package/dist/server/handlers/utils.d.ts +6 -0
  171. package/dist/server/handlers/utils.d.ts.map +1 -1
  172. package/dist/server/handlers/utils.js +1 -1
  173. package/dist/server/handlers/vNextNetwork.cjs +5 -5
  174. package/dist/server/handlers/vNextNetwork.d.ts +77 -10
  175. package/dist/server/handlers/vNextNetwork.d.ts.map +1 -1
  176. package/dist/server/handlers/vNextNetwork.js +1 -1
  177. package/dist/server/handlers/voice.cjs +5 -5
  178. package/dist/server/handlers/voice.d.ts +6 -4
  179. package/dist/server/handlers/voice.d.ts.map +1 -1
  180. package/dist/server/handlers/voice.js +1 -1
  181. package/dist/server/handlers/workflows.cjs +24 -16
  182. package/dist/server/handlers/workflows.d.ts +16 -7
  183. package/dist/server/handlers/workflows.d.ts.map +1 -1
  184. package/dist/server/handlers/workflows.js +1 -1
  185. package/dist/server/handlers.cjs +20 -25
  186. package/dist/server/handlers.d.ts +0 -1
  187. package/dist/server/handlers.d.ts.map +1 -1
  188. package/dist/server/handlers.js +10 -11
  189. package/dist/server/utils.d.ts +3 -1
  190. package/dist/server/utils.d.ts.map +1 -1
  191. package/package.json +8 -8
  192. package/dist/chunk-3THIIWWW.cjs.map +0 -1
  193. package/dist/chunk-4QSNRCOT.cjs.map +0 -1
  194. package/dist/chunk-5N6646N2.cjs +0 -17638
  195. package/dist/chunk-5N6646N2.cjs.map +0 -1
  196. package/dist/chunk-5QUKZCEF.js.map +0 -1
  197. package/dist/chunk-7QEJ5QG5.js.map +0 -1
  198. package/dist/chunk-A3ZHTDWB.js.map +0 -1
  199. package/dist/chunk-B43YAQJR.js +0 -144
  200. package/dist/chunk-B43YAQJR.js.map +0 -1
  201. package/dist/chunk-E64XEGXM.cjs.map +0 -1
  202. package/dist/chunk-GGCXLQ4J.js +0 -17619
  203. package/dist/chunk-GGCXLQ4J.js.map +0 -1
  204. package/dist/chunk-GUI3CROV.cjs.map +0 -1
  205. package/dist/chunk-JGD42NME.cjs +0 -150
  206. package/dist/chunk-JGD42NME.cjs.map +0 -1
  207. package/dist/chunk-KLCYAQBL.cjs.map +0 -1
  208. package/dist/chunk-L265APUD.cjs.map +0 -1
  209. package/dist/chunk-ODGI2PKN.cjs +0 -143
  210. package/dist/chunk-ODGI2PKN.cjs.map +0 -1
  211. package/dist/chunk-OW4FX5TS.js.map +0 -1
  212. package/dist/chunk-OZGPYA7A.js.map +0 -1
  213. package/dist/chunk-QBWF6U7Z.js.map +0 -1
  214. package/dist/chunk-R7NOGUZG.js.map +0 -1
  215. package/dist/chunk-V7VWD2Y2.js +0 -126
  216. package/dist/chunk-V7VWD2Y2.js.map +0 -1
  217. package/dist/chunk-YFLNLDQV.cjs.map +0 -1
  218. package/dist/server/handlers/network.cjs +0 -24
  219. package/dist/server/handlers/network.cjs.map +0 -1
  220. package/dist/server/handlers/network.d.ts +0 -50
  221. package/dist/server/handlers/network.d.ts.map +0 -1
  222. package/dist/server/handlers/network.js +0 -3
  223. package/dist/server/handlers/network.js.map +0 -1
@@ -1,10 +1,11 @@
1
1
  'use strict';
2
2
 
3
- var chunk4QSNRCOT_cjs = require('./chunk-4QSNRCOT.cjs');
3
+ var chunkG4PUALCE_cjs = require('./chunk-G4PUALCE.cjs');
4
4
  var chunkRE4RPXT2_cjs = require('./chunk-RE4RPXT2.cjs');
5
5
  var chunk7NADHFD2_cjs = require('./chunk-7NADHFD2.cjs');
6
6
  var chunkEMMSS5I5_cjs = require('./chunk-EMMSS5I5.cjs');
7
7
  var stream = require('stream');
8
+ var error = require('@mastra/core/error');
8
9
 
9
10
  // src/server/handlers/voice.ts
10
11
  var voice_exports = {};
@@ -14,7 +15,7 @@ chunkEMMSS5I5_cjs.__export(voice_exports, {
14
15
  getSpeakersHandler: () => getSpeakersHandler,
15
16
  transcribeSpeechHandler: () => transcribeSpeechHandler
16
17
  });
17
- async function getSpeakersHandler({ mastra, agentId }) {
18
+ async function getSpeakersHandler({ mastra, agentId, runtimeContext }) {
18
19
  try {
19
20
  if (!agentId) {
20
21
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent ID is required" });
@@ -23,7 +24,7 @@ async function getSpeakersHandler({ mastra, agentId }) {
23
24
  if (!agent) {
24
25
  throw new chunk7NADHFD2_cjs.HTTPException(404, { message: "Agent not found" });
25
26
  }
26
- const voice = await agent.getVoice();
27
+ const voice = await agent.getVoice({ runtimeContext });
27
28
  if (!voice) {
28
29
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent does not have voice capabilities" });
29
30
  }
@@ -36,24 +37,30 @@ async function getSpeakersHandler({ mastra, agentId }) {
36
37
  async function generateSpeechHandler({
37
38
  mastra,
38
39
  agentId,
39
- body
40
+ body,
41
+ runtimeContext
40
42
  }) {
41
43
  try {
42
44
  if (!agentId) {
43
45
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent ID is required" });
44
46
  }
45
- chunk4QSNRCOT_cjs.validateBody({
47
+ chunkG4PUALCE_cjs.validateBody({
46
48
  text: body?.text
47
49
  });
48
50
  const agent = mastra.getAgent(agentId);
49
51
  if (!agent) {
50
52
  throw new chunk7NADHFD2_cjs.HTTPException(404, { message: "Agent not found" });
51
53
  }
52
- const voice = await agent.getVoice();
54
+ const voice = await agent.getVoice({ runtimeContext });
53
55
  if (!voice) {
54
56
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent does not have voice capabilities" });
55
57
  }
56
- const audioStream = await voice.speak(body.text, { speaker: body.speakerId });
58
+ const audioStream = await Promise.resolve().then(() => voice.speak(body.text, { speaker: body.speakerId })).catch((err) => {
59
+ if (err instanceof error.MastraError) {
60
+ throw new chunk7NADHFD2_cjs.HTTPException(400, { message: err.message });
61
+ }
62
+ throw err;
63
+ });
57
64
  if (!audioStream) {
58
65
  throw new chunk7NADHFD2_cjs.HTTPException(500, { message: "Failed to generate speech" });
59
66
  }
@@ -65,7 +72,8 @@ async function generateSpeechHandler({
65
72
  async function transcribeSpeechHandler({
66
73
  mastra,
67
74
  agentId,
68
- body
75
+ body,
76
+ runtimeContext
69
77
  }) {
70
78
  try {
71
79
  if (!agentId) {
@@ -78,7 +86,7 @@ async function transcribeSpeechHandler({
78
86
  if (!agent) {
79
87
  throw new chunk7NADHFD2_cjs.HTTPException(404, { message: "Agent not found" });
80
88
  }
81
- const voice = await agent.getVoice();
89
+ const voice = await agent.getVoice({ runtimeContext });
82
90
  if (!voice) {
83
91
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent does not have voice capabilities" });
84
92
  }
@@ -91,7 +99,7 @@ async function transcribeSpeechHandler({
91
99
  return chunkRE4RPXT2_cjs.handleError(error, "Error transcribing speech");
92
100
  }
93
101
  }
94
- async function getListenerHandler({ mastra, agentId }) {
102
+ async function getListenerHandler({ mastra, agentId, runtimeContext }) {
95
103
  try {
96
104
  if (!agentId) {
97
105
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent ID is required" });
@@ -100,7 +108,7 @@ async function getListenerHandler({ mastra, agentId }) {
100
108
  if (!agent) {
101
109
  throw new chunk7NADHFD2_cjs.HTTPException(404, { message: "Agent not found" });
102
110
  }
103
- const voice = await agent.getVoice();
111
+ const voice = await agent.getVoice({ runtimeContext });
104
112
  if (!voice) {
105
113
  throw new chunk7NADHFD2_cjs.HTTPException(400, { message: "Agent does not have voice capabilities" });
106
114
  }
@@ -116,5 +124,5 @@ exports.getListenerHandler = getListenerHandler;
116
124
  exports.getSpeakersHandler = getSpeakersHandler;
117
125
  exports.transcribeSpeechHandler = transcribeSpeechHandler;
118
126
  exports.voice_exports = voice_exports;
119
- //# sourceMappingURL=chunk-KLCYAQBL.cjs.map
120
- //# sourceMappingURL=chunk-KLCYAQBL.cjs.map
127
+ //# sourceMappingURL=chunk-NLWACBE7.cjs.map
128
+ //# sourceMappingURL=chunk-NLWACBE7.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/server/handlers/voice.ts"],"names":["__export","HTTPException","handleError","validateBody","MastraError","Readable"],"mappings":";;;;;;;;;;AAAA,IAAA,aAAA,GAAA;AAAAA,0BAAA,CAAA,aAAA,EAAA;AAAA,EAAA,qBAAA,EAAA,MAAA,qBAAA;AAAA,EAAA,kBAAA,EAAA,MAAA,kBAAA;AAAA,EAAA,kBAAA,EAAA,MAAA,kBAAA;AAAA,EAAA,uBAAA,EAAA,MAAA;AAAA,CAAA,CAAA;AAkBA,eAAsB,kBAAA,CAAmB,EAAE,MAAA,EAAQ,OAAA,EAAS,gBAAe,EAAiB;AAC1F,EAAA,IAAI;AACF,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,MAAM,IAAIC,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,IAClE;AAEA,IAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA;AAErC,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,mBAAmB,CAAA;AAAA,IAC7D;AAEA,IAAA,MAAM,QAAQ,MAAM,KAAA,CAAM,QAAA,CAAS,EAAE,gBAAgB,CAAA;AAErD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,IACpF;AAEA,IAAA,MAAM,QAAA,GAAW,MAAM,KAAA,CAAM,WAAA,EAAY;AACzC,IAAA,OAAO,QAAA;AAAA,EACT,SAAS,KAAA,EAAO;AACd,IAAA,OAAOC,6BAAA,CAAY,OAAO,wBAAwB,CAAA;AAAA,EACpD;AACF;AAKA,eAAsB,qBAAA,CAAsB;AAAA,EAC1C,MAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAAA,EAKG;AACD,EAAA,IAAI;AACF,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,MAAM,IAAID,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,IAClE;AAEA,IAAAE,8BAAA,CAAa;AAAA,MACX,MAAM,IAAA,EAAM;AAAA,KACb,CAAA;AAED,IAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA;AAErC,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIF,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,mBAAmB,CAAA;AAAA,IAC7D;AAEA,IAAA,MAAM,QAAQ,MAAM,KAAA,CAAM,QAAA,CAAS,EAAE,gBAAgB,CAAA;AAErD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,IACpF;AAEA,IAAA,MAAM,cAAc,MAAM,OAAA,CAAQ,SAAQ,CACvC,IAAA,CAAK,MAAM,KAAA,CAAM,KAAA,CAAM,KAAM,IAAA,EAAO,EAAE,SAAS,IAAA,CAAM,SAAA,EAAY,CAAC,CAAA,CAClE,MAAM,CAAA,GAAA,KAAO;AACZ,MAAA,IAAI,eAAeG,iBAAA,EAAa;AAC9B,QAAA,MAAM,IAAIH,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,GAAA,CAAI,SAAS,CAAA;AAAA,MACvD;AAEA,MAAA,MAAM,GAAA;AAAA,IACR,CAAC,CAAA;AAEH,IAAA,IAAI,CAAC,WAAA,EAAa;AAChB,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,6BAA6B,CAAA;AAAA,IACvE;AAEA,IAAA,OAAO,WAAA;AAAA,EACT,SAAS,KAAA,EAAO;AACd,IAAA,OAAOC,6BAAA,CAAY,OAAO,yBAAyB,CAAA;AAAA,EACrD;AACF;AAKA,eAAsB,uBAAA,CAAwB;AAAA,EAC5C,MAAA;AAAA,EACA,OAAA;AAAA,EACA,IAAA;AAAA,EACA;AACF,CAAA,EAKG;AACD,EAAA,IAAI;AACF,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,MAAM,IAAID,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,IAClE;AAEA,IAAA,IAAI,CAAC,MAAM,SAAA,EAAW;AACpB,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0BAA0B,CAAA;AAAA,IACpE;AAEA,IAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA;AAErC,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,mBAAmB,CAAA;AAAA,IAC7D;AAEA,IAAA,MAAM,QAAQ,MAAM,KAAA,CAAM,QAAA,CAAS,EAAE,gBAAgB,CAAA;AAErD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,IACpF;AAEA,IAAA,MAAM,WAAA,GAAc,IAAII,eAAA,EAAS;AACjC,IAAA,WAAA,CAAY,IAAA,CAAK,KAAK,SAAS,CAAA;AAC/B,IAAA,WAAA,CAAY,KAAK,IAAI,CAAA;AAErB,IAAA,MAAM,OAAO,MAAM,KAAA,CAAM,MAAA,CAAO,WAAA,EAAa,KAAK,OAAO,CAAA;AACzD,IAAA,OAAO,EAAE,IAAA,EAAK;AAAA,EAChB,SAAS,KAAA,EAAO;AACd,IAAA,OAAOH,6BAAA,CAAY,OAAO,2BAA2B,CAAA;AAAA,EACvD;AACF;AAKA,eAAsB,kBAAA,CAAmB,EAAE,MAAA,EAAQ,OAAA,EAAS,gBAAe,EAAiB;AAC1F,EAAA,IAAI;AACF,IAAA,IAAI,CAAC,OAAA,EAAS;AACZ,MAAA,MAAM,IAAID,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,wBAAwB,CAAA;AAAA,IAClE;AAEA,IAAA,MAAM,KAAA,GAAQ,MAAA,CAAO,QAAA,CAAS,OAAO,CAAA;AAErC,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,mBAAmB,CAAA;AAAA,IAC7D;AAEA,IAAA,MAAM,QAAQ,MAAM,KAAA,CAAM,QAAA,CAAS,EAAE,gBAAgB,CAAA;AAErD,IAAA,IAAI,CAAC,KAAA,EAAO;AACV,MAAA,MAAM,IAAIA,+BAAA,CAAc,GAAA,EAAK,EAAE,OAAA,EAAS,0CAA0C,CAAA;AAAA,IACpF;AAEA,IAAA,MAAM,SAAA,GAAY,MAAM,KAAA,CAAM,WAAA,EAAY;AAC1C,IAAA,OAAO,SAAA;AAAA,EACT,SAAS,KAAA,EAAO;AACd,IAAA,OAAOC,6BAAA,CAAY,OAAO,yBAAyB,CAAA;AAAA,EACrD;AACF","file":"chunk-NLWACBE7.cjs","sourcesContent":["import { Readable } from 'stream';\nimport type { Agent } from '@mastra/core/agent';\nimport { MastraError } from '@mastra/core/error';\nimport type { RuntimeContext } from '@mastra/core/runtime-context';\nimport { HTTPException } from '../http-exception';\nimport type { Context } from '../types';\n\nimport { handleError } from './error';\nimport { validateBody } from './utils';\n\ninterface VoiceContext extends Context {\n agentId?: string;\n runtimeContext?: RuntimeContext;\n}\n\n/**\n * Get available speakers for an agent\n */\nexport async function getSpeakersHandler({ mastra, agentId, runtimeContext }: VoiceContext) {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgent(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ runtimeContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const speakers = await voice.getSpeakers();\n return speakers;\n } catch (error) {\n return handleError(error, 'Error getting speakers');\n }\n}\n\n/**\n * Generate speech from text\n */\nexport async function generateSpeechHandler({\n mastra,\n agentId,\n body,\n runtimeContext,\n}: VoiceContext & {\n body?: {\n text?: string;\n speakerId?: string;\n };\n}) {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n validateBody({\n text: body?.text,\n });\n\n const agent = mastra.getAgent(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ runtimeContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = await Promise.resolve()\n .then(() => voice.speak(body!.text!, { speaker: body!.speakerId! }))\n .catch(err => {\n if (err instanceof MastraError) {\n throw new HTTPException(400, { message: err.message });\n }\n\n throw err;\n });\n\n if (!audioStream) {\n throw new HTTPException(500, { message: 'Failed to generate speech' });\n }\n\n return audioStream;\n } catch (error) {\n return handleError(error, 'Error generating speech');\n }\n}\n\n/**\n * Transcribe speech to text\n */\nexport async function transcribeSpeechHandler({\n mastra,\n agentId,\n body,\n runtimeContext,\n}: VoiceContext & {\n body?: {\n audioData?: Buffer;\n options?: Parameters<NonNullable<Agent['voice']>['listen']>[1];\n };\n}) {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n if (!body?.audioData) {\n throw new HTTPException(400, { message: 'Audio data is required' });\n }\n\n const agent = mastra.getAgent(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ runtimeContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const audioStream = new Readable();\n audioStream.push(body.audioData);\n audioStream.push(null);\n\n const text = await voice.listen(audioStream, body.options);\n return { text };\n } catch (error) {\n return handleError(error, 'Error transcribing speech');\n }\n}\n\n/**\n * Get available listeners for an agent\n */\nexport async function getListenerHandler({ mastra, agentId, runtimeContext }: VoiceContext) {\n try {\n if (!agentId) {\n throw new HTTPException(400, { message: 'Agent ID is required' });\n }\n\n const agent = mastra.getAgent(agentId);\n\n if (!agent) {\n throw new HTTPException(404, { message: 'Agent not found' });\n }\n\n const voice = await agent.getVoice({ runtimeContext });\n\n if (!voice) {\n throw new HTTPException(400, { message: 'Agent does not have voice capabilities' });\n }\n\n const listeners = await voice.getListener();\n return listeners;\n } catch (error) {\n return handleError(error, 'Error getting listeners');\n }\n}\n"]}