@mastra/voice-speechify 0.14.0 → 0.14.1-alpha.0
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.
- package/LICENSE.md +6 -4
- package/dist/_types/@internal_voice/dist/_types/@internal_ai-sdk-v5/dist/index.d.ts +19 -220
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/base/index.d.ts +27 -27
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/index-Biaf3BmX.d.ts +319 -0
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/request-context/index.d.ts +167 -105
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/types/index.d.ts +4 -2
- package/dist/_types/@internal_voice/dist/voice/composite-voice.d.ts +1 -1
- package/dist/docs/SKILL.md +4 -4
- package/dist/docs/assets/SOURCE_MAP.json +1 -1
- package/dist/docs/references/{reference-voice-speechify.md → integrations-voice-speechify.md} +2 -0
- package/dist/docs/references/{docs-voice-overview.md → reference-voice-overview.md} +88 -132
- package/dist/index.cjs +1160 -1060
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.ts +2 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1159 -1058
- package/dist/index.js.map +1 -1
- package/dist/voices.d.ts +2 -2
- package/dist/voices.d.ts.map +1 -1
- package/package.json +13 -13
- package/CHANGELOG.md +0 -1866
- package/dist/_types/@internal_voice/dist/_types/@internal_core/dist/logger/index.d.ts +0 -217
package/dist/index.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../packages/_internal-core/src/logger/index.ts","../../../packages/_internal-core/src/base/MastraBase.ts","../../../packages/_internals/voice/src/voice/voice.ts","../src/voices.ts","../src/index.ts"],"names":["Speechify","Readable"],"mappings":"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A,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,IAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,YAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,WAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,YAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,KAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,YAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,QAAA;AAAA,EACA,UAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,QAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,SAAA;AAAA,EACA,OAAA;AAAA,EACA,WAAA;AAAA,EACA,OAAA;AAAA,EACA,UAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,SAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,MAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,QAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,KAAA;AAAA,EACA,OAAA;AAAA,EACA,OAAA;AAAA,EACA,MAAA;AAAA,EACA,UAAA;AAAA,EACA;AACF,CAAA;;;AClsBA,IAAM,aAAA,GAAgB,CAAC,KAAA,KAA8B,KAAA,KAAU,eAAe,KAAA,KAAU,WAAA;AAOjF,IAAM,cAAA,GAAN,cAA6B,WAAA,CAAY;AAAA,EACtC,MAAA;AAAA,EAER,YAAY,EAAE,WAAA,EAAa,OAAA,EAAQ,GAAmE,EAAC,EAAG;AACxG,IAAA,MAAM,SAAA,GAAY,aAAa,IAAA,IAAQ,eAAA;AACvC,IAAA,KAAA,CAAM;AAAA,MACJ,WAAA,EAAa;AAAA,QACX,IAAA,EAAM,SAAA;AAAA,QACN,MAAA,EAAQ,WAAA,EAAa,MAAA,IAAU,OAAA,CAAQ,GAAA,CAAI;AAAA,OAC7C;AAAA;AAAA;AAAA,MAGA,OAAA,EAAS,OAAA,KAAY,aAAA,CAAc,SAAS,IAAI,WAAA,GAAc,QAAA;AAAA,KAC/D,CAAA;AAED,IAAA,MAAM,MAAA,GAAS,WAAA,EAAa,MAAA,IAAU,OAAA,CAAQ,GAAA,CAAI,iBAAA;AAClD,IAAA,IAAI,CAAC,MAAA,EAAQ;AACX,MAAA,MAAM,IAAI,MAAM,8BAA8B,CAAA;AAAA,IAChD;AAEA,IAAA,IAAA,CAAK,MAAA,GAAS,IAAIA,gBAAA,CAAU,EAAE,QAAQ,CAAA;AAAA,EACxC;AAAA,EAEA,MAAM,WAAA,GAAc;AAClB,IAAA,OAAO,CAAC,GAAG,cAAA,EAAgB,GAAG,gBAAgB,CAAA,CAAE,IAAI,CAAA,KAAA,MAAU;AAAA,MAC5D,OAAA,EAAS,KAAA;AAAA,MACT,IAAA,EAAM;AAAA,KACR,CAAE,CAAA;AAAA,EACJ;AAAA,EAEA,MAAc,eAAe,MAAA,EAAgD;AAC3E,IAAA,MAAM,SAAmB,EAAC;AAC1B,IAAA,WAAA,MAAiB,SAAS,MAAA,EAAQ;AAChC,MAAA,IAAI,OAAO,UAAU,QAAA,EAAU;AAC7B,QAAA,MAAA,CAAO,IAAA,CAAK,MAAA,CAAO,IAAA,CAAK,KAAK,CAAC,CAAA;AAAA,MAChC,CAAA,MAAO;AACL,QAAA,MAAA,CAAO,KAAK,KAAK,CAAA;AAAA,MACnB;AAAA,IACF;AACA,IAAA,OAAO,MAAA,CAAO,MAAA,CAAO,MAAM,CAAA,CAAE,SAAS,OAAO,CAAA;AAAA,EAC/C;AAAA,EAEA,MAAM,KAAA,CACJ,KAAA,EACA,OAAA,EAIgC;AAChC,IAAA,MAAM,IAAA,GAAO,OAAO,KAAA,KAAU,QAAA,GAAW,QAAQ,MAAM,IAAA,CAAK,eAAe,KAAK,CAAA;AAEhF,IAAA,MAAM,EAAE,OAAA,EAAS,KAAA,EAAO,GAAG,aAAA,EAAc,GAAI,WAAW,EAAC;AACzD,IAAA,MAAM,OAAA,GAA8B;AAAA,MAClC,GAAG,aAAA;AAAA,MACH,KAAA,EAAO,IAAA;AAAA;AAAA;AAAA,MAGP,KAAA,EAAQ,KAAA,IAAS,IAAA,CAAK,WAAA,EAAa,IAAA;AAAA,MACnC,OAAA,EAAU,WAAW,IAAA,CAAK;AAAA,KAC5B;AAEA,IAAA,MAAM,SAAA,GAAY,MAAM,IAAA,CAAK,MAAA,CAAO,YAAY,OAAO,CAAA;AACvD,IAAA,MAAM,MAAA,GAAS,UAAU,SAAA,EAAU;AAEnC,IAAA,MAAM,UAAA,GAAa,IAAIC,eAAA,CAAS;AAAA,MAC9B,MAAM,iBAAkB;AACtB,QAAA,IAAI;AACF,UAAA,MAAM,EAAE,IAAA,EAAM,KAAA,EAAM,GAAI,MAAM,OAAO,IAAA,EAAK;AAC1C,UAAA,IAAI,IAAA,EAAM;AACR,YAAA,IAAA,CAAK,KAAK,IAAI,CAAA;AAAA,UAChB,CAAA,MAAO;AACL,YAAA,IAAA,CAAK,KAAK,KAAK,CAAA;AAAA,UACjB;AAAA,QACF,SAAS,KAAA,EAAO;AACd,UAAA,IAAA,CAAK,QAAQ,KAAc,CAAA;AAAA,QAC7B;AAAA,MACF;AAAA,KACD,CAAA;AAED,IAAA,UAAA,CAAW,EAAA,CAAG,OAAO,MAAM;AACzB,MAAA,MAAA,CAAO,WAAA,EAAY;AAAA,IACrB,CAAC,CAAA;AAED,IAAA,OAAO,UAAA;AAAA,EACT;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,EAOA,MAAM,WAAA,GAAc;AAClB,IAAA,OAAO,EAAE,SAAS,KAAA,EAAM;AAAA,EAC1B;AAAA,EAEA,MAAM,MAAA,CACJ,MAAA,EACA,QAAA,EACyC;AACzC,IAAA,MAAM,IAAI,MAAM,+CAA+C,CAAA;AAAA,EACjE;AACF","file":"index.cjs","sourcesContent":["import { Transform } from 'node:stream';\n\nexport const RegisteredLogger = {\n AGENT: 'AGENT',\n OBSERVABILITY: 'OBSERVABILITY',\n AUTH: 'AUTH',\n BROWSER: 'BROWSER',\n NETWORK: 'NETWORK',\n WORKFLOW: 'WORKFLOW',\n LLM: 'LLM',\n TTS: 'TTS',\n VOICE: 'VOICE',\n VECTOR: 'VECTOR',\n BUNDLER: 'BUNDLER',\n DEPLOYER: 'DEPLOYER',\n MEMORY: 'MEMORY',\n STORAGE: 'STORAGE',\n EMBEDDINGS: 'EMBEDDINGS',\n MCP_SERVER: 'MCP_SERVER',\n SERVER_CACHE: 'SERVER_CACHE',\n SERVER: 'SERVER',\n WORKSPACE: 'WORKSPACE',\n CHANNEL: 'CHANNEL',\n} as const;\n\nexport type RegisteredLogger = (typeof RegisteredLogger)[keyof typeof RegisteredLogger];\n\nexport const LogLevel = {\n DEBUG: 'debug',\n INFO: 'info',\n WARN: 'warn',\n ERROR: 'error',\n NONE: 'silent',\n} as const;\n\nexport type LogLevel = (typeof LogLevel)[keyof typeof LogLevel];\n\nexport interface BaseLogMessage {\n runId?: string;\n msg: string;\n level: LogLevel;\n time: Date;\n pid: number;\n hostname: string;\n name: string;\n}\n\nexport abstract class LoggerTransport extends Transform {\n constructor(opts: any = {}) {\n super({ ...opts, objectMode: true });\n }\n\n async listLogsByRunId(_args: {\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };\n }\n\n async listLogs(_args?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n returnPaginationResults?: boolean;\n page?: number;\n perPage?: number;\n }): Promise<{\n logs: BaseLogMessage[];\n total: number;\n page: number;\n perPage: number;\n hasMore: boolean;\n }> {\n return { logs: [], total: 0, page: _args?.page ?? 1, perPage: _args?.perPage ?? 100, hasMore: false };\n }\n}\n\nexport const createCustomTransport = (\n stream: Transform,\n listLogs?: LoggerTransport['listLogs'],\n listLogsByRunId?: LoggerTransport['listLogsByRunId'],\n) => {\n let transport = stream as LoggerTransport;\n if (listLogs) {\n transport.listLogs = listLogs;\n }\n if (listLogsByRunId) {\n transport.listLogsByRunId = listLogsByRunId;\n }\n return transport as LoggerTransport;\n};\n\nexport interface IMastraLogger {\n debug(message: string, ...args: any[]): void;\n info(message: string, ...args: any[]): void;\n warn(message: string, ...args: any[]): void;\n error(message: string, ...args: any[]): void;\n trackException(error: Error, metadata?: Record<string, unknown>): void;\n\n getTransports(): Map<string, LoggerTransport>;\n listLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n listLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }): Promise<{ logs: BaseLogMessage[]; total: number; page: number; perPage: number; hasMore: boolean }>;\n}\n\nexport abstract class MastraLogger implements IMastraLogger {\n protected name: string;\n protected level: LogLevel;\n protected transports: Map<string, LoggerTransport>;\n\n constructor(\n options: {\n name?: string;\n level?: LogLevel;\n transports?: Record<string, LoggerTransport>;\n } = {},\n ) {\n this.name = options.name || 'Mastra';\n this.level = options.level || LogLevel.ERROR;\n this.transports = new Map(Object.entries(options.transports || {}));\n }\n\n abstract debug(message: string, ...args: any[]): void;\n abstract info(message: string, ...args: any[]): void;\n abstract warn(message: string, ...args: any[]): void;\n abstract error(message: string, ...args: any[]): void;\n\n getTransports() {\n return this.transports;\n }\n\n trackException(_error: Error, _metadata?: Record<string, unknown>) {}\n\n async listLogs(\n transportId: string,\n params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n if (!transportId || !this.transports.has(transportId)) {\n return { logs: [], total: 0, page: params?.page ?? 1, perPage: params?.perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports.get(transportId)!.listLogs?.(params) ?? {\n logs: [],\n total: 0,\n page: params?.page ?? 1,\n perPage: params?.perPage ?? 100,\n hasMore: false,\n }\n );\n }\n\n async listLogsByRunId({\n transportId,\n runId,\n fromDate,\n toDate,\n logLevel,\n filters,\n page,\n perPage,\n }: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n if (!transportId || !this.transports.has(transportId) || !runId) {\n return { logs: [], total: 0, page: page ?? 1, perPage: perPage ?? 100, hasMore: false };\n }\n\n return (\n this.transports\n .get(transportId)!\n .listLogsByRunId?.({ runId, fromDate, toDate, logLevel, filters, page, perPage }) ?? {\n logs: [],\n total: 0,\n page: page ?? 1,\n perPage: perPage ?? 100,\n hasMore: false,\n }\n );\n }\n}\n\nexport type LogFilterContext = {\n component?: RegisteredLogger;\n level: LogLevel;\n message: string;\n args: unknown[];\n};\n\nexport type LogFilter = (ctx: LogFilterContext) => boolean;\n\nexport interface ConsoleLoggerOptions {\n name?: string;\n level?: LogLevel;\n component?: RegisteredLogger;\n filter?: LogFilter;\n}\n\nexport class ConsoleLogger extends MastraLogger {\n protected component?: RegisteredLogger;\n protected filter?: LogFilter;\n\n constructor(options: ConsoleLoggerOptions = {}) {\n super(options);\n this.component = options.component;\n this.filter = options.filter;\n }\n\n child(componentOrBindings: RegisteredLogger | Record<string, unknown>): ConsoleLogger {\n const component =\n typeof componentOrBindings === 'string'\n ? componentOrBindings\n : ((componentOrBindings?.component as RegisteredLogger) ?? this.component);\n return new ConsoleLogger({\n name: this.name,\n level: this.level,\n component,\n filter: this.filter,\n });\n }\n\n private shouldLog(level: LogLevel, message: string, args: unknown[]): boolean {\n if (!this.filter) return true;\n try {\n return this.filter({ component: this.component, level, message, args });\n } catch (e) {\n console.error(`[Logger] Filter error for component=${this.component} level=${level}:`, e);\n return true;\n }\n }\n\n private prefix(): string {\n return this.component ? `[${this.component}] ` : '';\n }\n\n debug(message: string, ...args: any[]): void {\n if (this.level === LogLevel.DEBUG && this.shouldLog(LogLevel.DEBUG, message, args)) {\n console.info(`${this.prefix()}${message}`, ...args);\n }\n }\n\n info(message: string, ...args: any[]): void {\n if (\n (this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) &&\n this.shouldLog(LogLevel.INFO, message, args)\n ) {\n console.info(`${this.prefix()}${message}`, ...args);\n }\n }\n\n warn(message: string, ...args: any[]): void {\n if (\n (this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) &&\n this.shouldLog(LogLevel.WARN, message, args)\n ) {\n console.warn(`${this.prefix()}${message}`, ...args);\n }\n }\n\n error(message: string, ...args: any[]): void {\n if (\n (this.level === LogLevel.ERROR ||\n this.level === LogLevel.WARN ||\n this.level === LogLevel.INFO ||\n this.level === LogLevel.DEBUG) &&\n this.shouldLog(LogLevel.ERROR, message, args)\n ) {\n console.error(`${this.prefix()}${message}`, ...args);\n }\n }\n\n async listLogs(\n _transportId: string,\n _params?: {\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n },\n ) {\n return { logs: [], total: 0, page: _params?.page ?? 1, perPage: _params?.perPage ?? 100, hasMore: false };\n }\n\n async listLogsByRunId(_args: {\n transportId: string;\n runId: string;\n fromDate?: Date;\n toDate?: Date;\n logLevel?: LogLevel;\n filters?: Record<string, any>;\n page?: number;\n perPage?: number;\n }) {\n return { logs: [], total: 0, page: _args.page ?? 1, perPage: _args.perPage ?? 100, hasMore: false };\n }\n}\n","import type { IMastraLogger } from '../logger';\nimport { ConsoleLogger, RegisteredLogger } from '../logger';\n\nexport class MastraBase {\n component: RegisteredLogger = RegisteredLogger.LLM;\n protected logger: IMastraLogger;\n name?: string;\n #rawConfig?: Record<string, unknown>;\n\n constructor({\n component,\n name,\n rawConfig,\n }: {\n component?: RegisteredLogger;\n name?: string;\n rawConfig?: Record<string, unknown>;\n }) {\n this.component = component || RegisteredLogger.LLM;\n this.name = name;\n this.#rawConfig = rawConfig;\n this.logger = new ConsoleLogger({ name: `${this.component} - ${this.name}` });\n }\n\n /**\n * Returns the raw storage configuration this primitive was created from,\n * or undefined if it was created from code.\n */\n toRawConfig(): Record<string, unknown> | undefined {\n return this.#rawConfig;\n }\n\n /**\n * Sets the raw storage configuration for this primitive.\n * @internal\n */\n __setRawConfig(rawConfig: Record<string, unknown>): void {\n this.#rawConfig = rawConfig;\n }\n\n /**\n * Set the logger for the agent\n * @param logger\n */\n __setLogger(logger: IMastraLogger) {\n this.logger =\n 'child' in logger && typeof (logger as any).child === 'function'\n ? (logger as any).child({ component: this.component })\n : logger;\n }\n}\n","import { MastraBase } from '@internal/core/base';\nimport type { ToolsInput } from '@internal/core/types';\n\nexport type VoiceEventType = 'speaking' | 'writing' | 'error' | string;\n\nexport interface VoiceEventMap {\n speaker: NodeJS.ReadableStream;\n speaking: { audio?: string };\n writing: { text: string; role: 'assistant' | 'user' };\n error: { message: string; code?: string; details?: unknown };\n [key: string]: unknown;\n}\n\ninterface BuiltInModelConfig {\n name: string;\n apiKey?: string;\n}\n\nexport interface VoiceConfig<T = unknown> {\n listeningModel?: BuiltInModelConfig;\n speechModel?: BuiltInModelConfig;\n speaker?: string;\n name?: string;\n realtimeConfig?: {\n model?: string;\n apiKey?: string;\n options?: T;\n };\n}\n\nexport interface VoiceSpanConfig {\n component: 'VOICE';\n name?: string;\n speaker?: string;\n listeningModel?: { name: string };\n speechModel?: { name: string };\n realtimeModel?: string;\n}\n\nexport interface IMastraVoice<\n TSpeakOptions = unknown,\n TListenOptions = unknown,\n TTools extends ToolsInput = ToolsInput,\n TEventArgs extends VoiceEventMap = VoiceEventMap,\n TSpeakerMetadata = unknown,\n> {\n serializeForSpan(): VoiceSpanConfig;\n speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n } & TSpeakOptions,\n ): Promise<NodeJS.ReadableStream | void>;\n listen(\n audioStream: NodeJS.ReadableStream | unknown,\n options?: TListenOptions,\n ): Promise<string | NodeJS.ReadableStream | void>;\n updateConfig(options: Record<string, unknown>): void;\n connect(options?: Record<string, unknown>): Promise<void>;\n send(audioData: NodeJS.ReadableStream | Int16Array): Promise<void>;\n answer(options?: Record<string, unknown>): Promise<void>;\n addInstructions(instructions?: string): void;\n addTools(tools: TTools): void;\n close(): void;\n on<E extends VoiceEventType>(\n event: E,\n callback: (data: E extends keyof TEventArgs ? TEventArgs[E] : unknown) => void,\n ): void;\n off<E extends VoiceEventType>(\n event: E,\n callback: (data: E extends keyof TEventArgs ? TEventArgs[E] : unknown) => void,\n ): void;\n getSpeakers(): Promise<\n Array<\n {\n voiceId: string;\n } & TSpeakerMetadata\n >\n >;\n getListener(): Promise<{ enabled: boolean }>;\n}\n\nexport abstract class MastraVoice<\n TOptions = unknown,\n TSpeakOptions = unknown,\n TListenOptions = unknown,\n TTools extends ToolsInput = ToolsInput,\n TEventArgs extends VoiceEventMap = VoiceEventMap,\n TSpeakerMetadata = unknown,\n>\n extends MastraBase\n implements IMastraVoice<TSpeakOptions, TListenOptions, TTools, TEventArgs, TSpeakerMetadata>\n{\n protected listeningModel?: BuiltInModelConfig;\n protected speechModel?: BuiltInModelConfig;\n protected speaker?: string;\n protected realtimeConfig?: {\n model?: string;\n apiKey?: string;\n options?: TOptions;\n };\n\n constructor({ listeningModel, speechModel, speaker, realtimeConfig, name }: VoiceConfig<TOptions> = {}) {\n super({\n component: 'VOICE',\n name,\n });\n this.listeningModel = listeningModel;\n this.speechModel = speechModel;\n this.speaker = speaker;\n this.realtimeConfig = realtimeConfig;\n }\n\n /**\n * Custom serialization for tracing/observability spans.\n * Excludes `apiKey` from listeningModel / speechModel / realtimeConfig\n * and any provider-specific state held by subclasses. Subclasses that\n * need to expose additional non-sensitive fields can override.\n */\n serializeForSpan(): VoiceSpanConfig {\n return {\n component: 'VOICE',\n name: this.name,\n speaker: this.speaker,\n listeningModel: this.listeningModel ? { name: this.listeningModel.name } : undefined,\n speechModel: this.speechModel ? { name: this.speechModel.name } : undefined,\n realtimeModel: this.realtimeConfig?.model,\n };\n }\n\n /**\n * Convert text to speech\n * @param input Text or text stream to convert to speech\n * @param options Speech options including speaker and provider-specific options\n * @returns Audio stream\n */\n /**\n * Convert text to speech\n * @param input Text or text stream to convert to speech\n * @param options Speech options including speaker and provider-specific options\n * @returns Audio stream or void if in chat mode\n */\n abstract speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n } & TSpeakOptions,\n ): Promise<NodeJS.ReadableStream | void>;\n\n /**\n * Convert speech to text\n * @param audioStream Audio stream to transcribe\n * @param options Provider-specific transcription options\n * @returns Text or text stream\n */\n /**\n * Convert speech to text\n * @param audioStream Audio stream to transcribe\n * @param options Provider-specific transcription options\n * @returns Text, text stream, or void if in chat mode\n */\n abstract listen(\n audioStream: NodeJS.ReadableStream | unknown, // Allow other audio input types for OpenAI realtime API\n options?: TListenOptions,\n ): Promise<string | NodeJS.ReadableStream | void>;\n\n updateConfig(_options: Record<string, unknown>): void {\n this.logger.debug('updateConfig not implemented by this voice provider');\n }\n\n /**\n * Initializes a WebSocket or WebRTC connection for real-time communication\n * @returns Promise that resolves when the connection is established\n */\n async connect(_options?: Record<string, unknown>): Promise<void> {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('connect not implemented by this voice provider');\n }\n\n /**\n * Relay audio data to the voice provider for real-time processing\n * @param audioData Audio data to relay\n */\n async send(_audioData: NodeJS.ReadableStream | Int16Array): Promise<void> {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('relay not implemented by this voice provider');\n }\n\n /**\n * Trigger voice providers to respond\n */\n async answer(_options?: Record<string, unknown>): Promise<void> {\n this.logger.debug('answer not implemented by this voice provider');\n }\n\n /**\n * Equip the voice provider with instructions\n * @param instructions Instructions to add\n */\n addInstructions(_instructions?: string): void {\n // Default implementation - voice providers can override if they support this feature\n }\n\n /**\n * Equip the voice provider with tools\n * @param tools Array of tools to add\n */\n addTools(_tools: TTools): void {\n // Default implementation - voice providers can override if they support this feature\n }\n\n /**\n * Disconnect from the WebSocket or WebRTC connection\n */\n close(): void {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('close not implemented by this voice provider');\n }\n\n /**\n * Register an event listener\n * @param event Event name (e.g., 'speaking', 'writing', 'error')\n * @param callback Callback function that receives event data\n */\n on<E extends VoiceEventType>(\n _event: E,\n _callback: (data: E extends keyof TEventArgs ? TEventArgs[E] : unknown) => void,\n ): void {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('on not implemented by this voice provider');\n }\n\n /**\n * Remove an event listener\n * @param event Event name (e.g., 'speaking', 'writing', 'error')\n * @param callback Callback function to remove\n */\n off<E extends VoiceEventType>(\n _event: E,\n _callback: (data: E extends keyof TEventArgs ? TEventArgs[E] : unknown) => void,\n ): void {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('off not implemented by this voice provider');\n }\n\n /**\n * Get available speakers/voices\n * @returns Array of available voice IDs and their metadata\n */\n getSpeakers(): Promise<\n Array<\n {\n voiceId: string;\n } & TSpeakerMetadata\n >\n > {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('getSpeakers not implemented by this voice provider');\n return Promise.resolve([]);\n }\n\n /**\n * Get available speakers/voices\n * @returns Array of available voice IDs and their metadata\n */\n getListener(): Promise<{ enabled: boolean }> {\n // Default implementation - voice providers can override if they support this feature\n this.logger.debug('getListener not implemented by this voice provider');\n return Promise.resolve({ enabled: false });\n }\n}\n","/**\n * Curated voices served by the Simba 3 generation models (`simba-3.0` and\n * `simba-3.2`). The classic catalog voices in `SPEECHIFY_VOICES` are not\n * served by those models and return an error. `simba-3.2` additionally\n * accepts cloned voices manually approved by Speechify.\n */\nexport const SIMBA_3_VOICES = [\n 'beatrice_32',\n 'dominic_32',\n 'edmund_32',\n 'geffen_32',\n 'harper_32',\n 'hugh_32',\n 'imogen_32',\n 'wyatt_32',\n] as const;\n\nexport const SPEECHIFY_VOICES = [\n 'henry',\n 'bwyneth',\n 'carly',\n 'kristy',\n 'oliver',\n 'tasha',\n 'joe',\n 'lisa',\n 'george',\n 'emily',\n 'rob',\n 'russell',\n 'benjamin',\n 'michael',\n 'kim',\n 'ankit',\n 'arun',\n 'carol',\n 'helen',\n 'julie',\n 'linda',\n 'mark',\n 'nick',\n 'elijah',\n 'beverly',\n 'collin',\n 'erin',\n 'jack',\n 'jesse',\n 'ken',\n 'lindsey',\n 'monica',\n 'phil',\n 'ron',\n 'stacy',\n 'archie',\n 'evelyn',\n 'freddie',\n 'harper',\n 'jacob',\n 'james',\n 'mason',\n 'victoria',\n 'christina',\n 'douglas',\n 'lauren',\n 'patricia',\n 'jennifer',\n 'robert',\n 'peter',\n 'jeremy',\n 'barbara',\n 'susan',\n 'charles',\n 'harold',\n 'sarah',\n 'karen',\n 'anthony',\n 'donald',\n 'paul',\n 'steven',\n 'andrew',\n 'kenneth',\n 'joshua',\n 'betty',\n 'margaret',\n 'kyle',\n 'edward',\n 'ronald',\n 'timothy',\n 'sandra',\n 'dorothy',\n 'jeffrey',\n 'kimberly',\n 'donna',\n 'walter',\n 'megan',\n 'richard',\n 'amanda',\n 'melissa',\n 'deborah',\n 'gary',\n 'rebecca',\n 'sharon',\n 'cynthia',\n 'kathleen',\n 'joan',\n 'shirley',\n 'angela',\n 'anna',\n 'brenda',\n 'larry',\n 'keith',\n 'scott',\n 'pamela',\n 'samuel',\n 'gregory',\n 'samantha',\n 'katherine',\n 'christine',\n 'frank',\n 'alexander',\n 'raymond',\n 'debra',\n 'patrick',\n 'catherine',\n 'carolyn',\n 'janet',\n 'ruth',\n 'zachary',\n 'heather',\n 'diane',\n 'dennis',\n 'jerry',\n 'tyler',\n 'aaron',\n 'virginia',\n 'joyce',\n 'judith',\n 'kelly',\n 'nathan',\n 'terry',\n 'carl',\n 'gerald',\n 'jaqueline',\n 'cheryl',\n 'christian',\n 'rohit',\n 'gloria',\n 'arthur',\n 'austin',\n 'sean',\n 'martha',\n 'randy',\n 'ralph',\n 'roy',\n 'alan',\n 'logan',\n 'willie',\n 'kathryn',\n 'frances',\n 'madison',\n 'bruce',\n 'billy',\n 'jordan',\n 'bryan',\n 'dylan',\n 'vincent',\n 'eugene',\n 'janice',\n 'jean',\n 'abigail',\n 'alice',\n 'bobby',\n 'julia',\n 'johnny',\n 'judy',\n 'bradley',\n 'hunter',\n 'dale',\n 'howard',\n 'fred',\n 'danielle',\n 'marilyn',\n 'blake',\n 'doris',\n 'denise',\n 'issac',\n 'theresa',\n 'natalie',\n 'aiden',\n 'brittany',\n 'charlotte',\n 'marie',\n 'kayla',\n 'alexis',\n 'lori',\n 'landon',\n 'tiffany',\n 'marcus',\n 'martin',\n 'curtis',\n 'kathy',\n 'todd',\n 'leonard',\n 'calvin',\n 'rose',\n 'ava',\n 'bonnie',\n 'peggy',\n 'edwin',\n 'don',\n 'ruby',\n 'crystal',\n 'craig',\n 'norma',\n 'paula',\n 'annie',\n 'shawn',\n 'lillian',\n 'robin',\n 'evan',\n 'garrette',\n 'francis',\n 'danny',\n 'stanley',\n 'lucy',\n 'jeffery',\n 'herbert',\n 'lee',\n 'april',\n 'anne',\n 'tammy',\n 'trevor',\n 'eleanor',\n 'regina',\n 'carrie',\n 'leah',\n 'beth',\n 'cody',\n 'shane',\n 'dana',\n 'allison',\n 'dawn',\n 'julian',\n 'wendy',\n 'travis',\n 'florence',\n 'tracy',\n 'adrian',\n 'phillis',\n 'carole',\n 'mildred',\n 'cameron',\n 'chad',\n 'connie',\n 'gladys',\n 'arlene',\n 'jana',\n 'leona',\n 'miriam',\n 'lorrie',\n 'velma',\n 'eduardo',\n 'bennie',\n 'rene',\n 'ed',\n 'stuart',\n 'terrence',\n 'delbert',\n 'colin',\n 'susanne',\n 'hugo',\n 'ignacio',\n 'sheldon',\n 'josefina',\n 'corinne',\n 'lana',\n 'cherry',\n 'erick',\n 'frankie',\n 'stewart',\n 'claudette',\n 'doyle',\n 'darrel',\n 'janine',\n 'simone',\n 'casey',\n 'leta',\n 'rogelio',\n 'lorraine',\n 'terence',\n 'santiago',\n 'alonzo',\n 'benny',\n 'elisa',\n 'dee',\n 'bert',\n 'elbert',\n 'charmaine',\n 'roslyn',\n 'shelley',\n 'ramiro',\n 'noel',\n 'mercedes',\n 'christie',\n 'laurel',\n 'spencer',\n 'pat',\n 'dorthy',\n 'jeanie',\n 'clare',\n 'aileen',\n 'grady',\n 'deana',\n 'cornelius',\n 'cecelia',\n 'maryann',\n 'rolando',\n 'lamar',\n 'susana',\n 'katharine',\n 'clay',\n 'liza',\n 'jerri',\n 'rochelle',\n 'cathy',\n 'percy',\n 'dexter',\n 'maribel',\n 'rosemarie',\n 'bradford',\n 'kari',\n 'nikki',\n 'bernadette',\n 'eugenia',\n 'merie',\n 'darie',\n 'amon',\n 'moses',\n 'concetta',\n 'irvin',\n 'rodolfo',\n 'christi',\n 'roman',\n 'janie',\n 'marcy',\n 'lindy',\n 'tommie',\n 'darnell',\n 'randal',\n 'selena',\n 'shari',\n 'antoinette',\n 'timmy',\n 'darrin',\n 'margo',\n 'sherri',\n 'erika',\n 'robbie',\n 'marcella',\n 'lela',\n 'winston',\n 'jeannine',\n 'brendan',\n 'christa',\n 'deloris',\n 'toby',\n 'elva',\n 'van',\n 'abel',\n 'myron',\n 'gracie',\n 'gwen',\n 'melba',\n 'boyd',\n 'shawna',\n 'courtney',\n 'marlena',\n 'cathie',\n 'ramesh',\n 'rita',\n 'joel',\n 'derek',\n 'earl',\n 'brett',\n 'ellis',\n 'ian',\n 'oscar',\n 'edna',\n 'ethel',\n 'gene',\n 'shannon',\n 'sheila',\n 'dustin',\n 'ellen',\n 'hilda',\n 'ray',\n 'marjorie',\n 'sylvia',\n 'barry',\n 'melvin',\n 'thelma',\n 'cindy',\n 'miranda',\n 'bernard',\n 'carlton',\n 'juanita',\n 'darrell',\n 'erik',\n 'jeremiah',\n 'nicolas',\n 'gordon',\n 'violet',\n 'mona',\n 'glen',\n 'willis',\n 'harvey',\n 'rudolph',\n 'preston',\n 'cole',\n 'june',\n 'pauline',\n 'leo',\n 'earnest',\n 'devin',\n 'audrey',\n 'claire',\n 'vivian',\n 'goldie',\n 'tommy',\n 'allen',\n 'glenn',\n 'wilson',\n 'jill',\n 'loretta',\n 'mabel',\n 'marsha',\n 'lillie',\n 'minnie',\n 'essie',\n 'madge',\n 'viola',\n 'nellie',\n 'pearl',\n 'marvin',\n 'mae',\n 'levi',\n 'lucille',\n 'hazel',\n 'nathaniel',\n 'lydia',\n 'bertha',\n 'ursula',\n 'kay',\n 'sue',\n 'dean',\n 'verna',\n 'teri',\n 'edith',\n 'dan',\n 'lewis',\n 'harriett',\n 'clifford',\n 'genevieve',\n 'colleen',\n 'gilbert',\n 'patrice',\n 'jared',\n 'elaine',\n 'maureen',\n 'edmund',\n 'nina',\n 'georgia',\n 'garrett',\n 'renee',\n 'bessie',\n 'leslie',\n 'max',\n 'leon',\n 'fannie',\n 'lowell',\n 'veronica',\n 'vanessa',\n 'joy',\n 'jim',\n 'faith',\n 'valerie',\n 'wanda',\n 'steve',\n 'naomi',\n 'miles',\n 'marcia',\n 'brent',\n 'clinton',\n 'jon',\n 'marshall',\n 'roberta',\n 'alexandra',\n 'doreen',\n 'daisy',\n 'della',\n 'minerva',\n 'cedric',\n 'patsy',\n 'kerry',\n 'lena',\n 'gregg',\n 'lois',\n 'kurt',\n 'lorene',\n 'susie',\n 'nora',\n 'lucinda',\n 'mathew',\n 'flora',\n 'rosie',\n 'sherman',\n 'lance',\n 'darcy',\n 'mattie',\n 'madeline',\n 'sylvester',\n 'cory',\n 'anita',\n 'allan',\n 'lula',\n 'nell',\n 'priscilla',\n 'kristin',\n 'rosemary',\n 'roosevelt',\n 'geneva',\n 'jeannette',\n 'bob',\n 'esther',\n 'michele',\n 'forrest',\n 'wilbert',\n 'cathleen',\n 'jaime',\n 'dwayne',\n 'inez',\n 'alberto',\n 'lynne',\n 'maxine',\n 'wilma',\n 'taylor',\n 'angelina',\n 'hope',\n 'margie',\n 'myrtle',\n 'misty',\n 'jimmie',\n 'eunice',\n 'everett',\n 'miracle',\n 'billie',\n 'leland',\n 'jackie',\n 'kristina',\n 'johnnie',\n 'isaac',\n 'bobbie',\n 'tonya',\n 'reba',\n 'kristine',\n 'amelia',\n 'cassandra',\n 'angie',\n 'maude',\n 'nichole',\n 'marguerite',\n 'justine',\n 'kelli',\n 'mandy',\n 'jeri',\n 'darla',\n 'shelia',\n 'jacquelin',\n 'cara',\n 'kellie',\n 'jolene',\n 'chelsea',\n 'autumn',\n 'glenda',\n 'lolita',\n 'jeanne',\n 'sherrie',\n 'toni',\n 'becky',\n 'jennie',\n 'jenna',\n 'leigh',\n 'cristina',\n 'blanche',\n 'clarissa',\n 'betsy',\n 'bridget',\n 'ginger',\n 'faye',\n 'candice',\n 'jaclyn',\n 'krista',\n 'marisa',\n 'gayle',\n 'meredith',\n 'angelica',\n 'rachael',\n 'candy',\n 'trisha',\n 'sandy',\n 'holly',\n 'alicia',\n 'melinda',\n 'geraldine',\n 'tara',\n 'isabel',\n 'adrienne',\n 'terra',\n 'rubye',\n 'antonia',\n 'guadalupe',\n 'cheri',\n 'janelle',\n 'constance',\n 'robyn',\n 'jodi',\n 'krystal',\n 'rosalie',\n 'deanna',\n 'debbie',\n 'josie',\n 'ronda',\n 'paulette',\n 'belinda',\n 'alton',\n 'rudy',\n 'kelvin',\n 'damon',\n 'johnathan',\n 'cesar',\n 'ira',\n 'horace',\n 'grant',\n 'lionel',\n 'wilbur',\n 'jake',\n 'jody',\n 'rickey',\n 'lester',\n 'pablo',\n 'neal',\n 'mack',\n 'orlando',\n 'alfonso',\n 'ernesto',\n 'rex',\n 'lynn',\n 'matt',\n 'lyle',\n 'kristopher',\n 'hubert',\n 'kenny',\n 'doug',\n 'sammy',\n 'homer',\n 'wendell',\n 'woodrow',\n 'felipe',\n 'garry',\n 'pete',\n 'marco',\n 'rufus',\n 'owen',\n 'bryant',\n 'abraham',\n 'irving',\n 'jermaine',\n 'julius',\n 'marty',\n 'alejandro',\n 'carmen',\n 'carlos',\n 'celia',\n 'lucas',\n 'luiza',\n 'diogo',\n 'agueda',\n 'raphael',\n 'elise',\n 'frederick',\n 'andra',\n 'frederik',\n 'freja',\n 'daan',\n 'lotte',\n 'eino',\n 'helmi',\n 'jakob',\n 'frida',\n 'kostas',\n 'eleni',\n 'lazzaro',\n 'alessia',\n 'mart',\n 'liis',\n 'trinh',\n 'thoa',\n 'lesya',\n 'taras',\n 'mikhail',\n 'olga',\n 'axel',\n 'ebba',\n 'hemant',\n 'priya',\n 'aicha',\n 'ismail',\n 'moshe',\n 'inbar',\n 'gil',\n 'lital',\n 'yusuf',\n 'elif',\n 'dominika',\n 'michal',\n] as const;\n\nexport type SpeechifyVoiceId = (typeof SPEECHIFY_VOICES)[number] | (typeof SIMBA_3_VOICES)[number];\n","import { Readable } from 'node:stream';\n\nimport { MastraVoice } from '@internal/voice';\nimport { Speechify } from '@speechify/api-sdk';\nimport type { AudioStreamRequest, VoiceModelName } from '@speechify/api-sdk';\n\nimport { SIMBA_3_VOICES, SPEECHIFY_VOICES } from './voices';\nimport type { SpeechifyVoiceId } from './voices';\n\n/**\n * Models accepted by the Speechify API. Extends the SDK's `VoiceModelName`\n * with the Simba 3 generation models, which the API accepts but the SDK's\n * type union does not yet include. `simba-3.0` and `simba-3.2` are\n * currently English only and serve only the curated `SIMBA_3_VOICES`\n * (plus, on `simba-3.2`, cloned voices approved by Speechify) — the\n * classic catalog voices return an error on them.\n */\ntype SpeechifyModel = VoiceModelName | 'simba-3.0' | 'simba-3.2';\n\nconst isSimba3Model = (model: string | undefined) => model === 'simba-3.0' || model === 'simba-3.2';\n\ninterface SpeechifyConfig {\n name?: SpeechifyModel;\n apiKey?: string;\n}\n\nexport class SpeechifyVoice extends MastraVoice {\n private client: Speechify;\n\n constructor({ speechModel, speaker }: { speechModel?: SpeechifyConfig; speaker?: SpeechifyVoiceId } = {}) {\n const modelName = speechModel?.name ?? 'simba-english';\n super({\n speechModel: {\n name: modelName,\n apiKey: speechModel?.apiKey ?? process.env.SPEECHIFY_API_KEY,\n },\n // The Simba 3 models serve only the curated SIMBA_3_VOICES, so the\n // default speaker has to follow the configured model.\n speaker: speaker ?? (isSimba3Model(modelName) ? 'harper_32' : 'george'),\n });\n\n const apiKey = speechModel?.apiKey ?? process.env.SPEECHIFY_API_KEY;\n if (!apiKey) {\n throw new Error('SPEECHIFY_API_KEY is not set');\n }\n\n this.client = new Speechify({ apiKey });\n }\n\n async getSpeakers() {\n return [...SIMBA_3_VOICES, ...SPEECHIFY_VOICES].map(voice => ({\n voiceId: voice,\n name: voice,\n }));\n }\n\n private async streamToString(stream: NodeJS.ReadableStream): Promise<string> {\n const chunks: Buffer[] = [];\n for await (const chunk of stream) {\n if (typeof chunk === 'string') {\n chunks.push(Buffer.from(chunk));\n } else {\n chunks.push(chunk);\n }\n }\n return Buffer.concat(chunks).toString('utf-8');\n }\n\n async speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n model?: SpeechifyModel;\n } & Omit<AudioStreamRequest, 'voiceId' | 'input' | 'model'>,\n ): Promise<NodeJS.ReadableStream> {\n const text = typeof input === 'string' ? input : await this.streamToString(input);\n\n const { speaker, model, ...streamOptions } = options ?? {};\n const request: AudioStreamRequest = {\n ...streamOptions,\n input: text,\n // The SDK sends `model` to the API verbatim, so casting the wider\n // SpeechifyModel union into its narrower VoiceModelName is safe.\n model: (model || this.speechModel?.name) as VoiceModelName,\n voiceId: (speaker || this.speaker) as SpeechifyVoiceId,\n };\n\n const webStream = await this.client.audioStream(request);\n const reader = webStream.getReader();\n\n const nodeStream = new Readable({\n read: async function () {\n try {\n const { done, value } = await reader.read();\n if (done) {\n this.push(null);\n } else {\n this.push(value);\n }\n } catch (error) {\n this.destroy(error as Error);\n }\n },\n });\n\n nodeStream.on('end', () => {\n reader.releaseLock();\n });\n\n return nodeStream;\n }\n\n /**\n * Checks if listening capabilities are enabled.\n *\n * @returns {Promise<{ enabled: boolean }>}\n */\n async getListener() {\n return { enabled: false };\n }\n\n async listen(\n _input: NodeJS.ReadableStream,\n _options?: Record<string, unknown>,\n ): Promise<string | NodeJS.ReadableStream> {\n throw new Error('Speechify does not support speech recognition');\n }\n}\n\nexport type { SpeechifyConfig, SpeechifyModel, SpeechifyVoiceId };\n"]}
|
|
1
|
+
{"version":3,"file":"index.cjs","names":["#adapterContext","#correlate","#export","#rawConfig","Speechify","stream","Readable"],"sources":["../../../packages/_internal-core/dist/logger/index.js","../../../packages/_internal-core/dist/base/index.js","../../../packages/_internals/voice/dist/aisdk-C_K-VCwq.js","../src/voices.ts","../src/index.ts"],"sourcesContent":["import { Transform } from \"stream\";\n//#region src/logger/adapter.ts\nfunction isAdaptableLogger(logger) {\n\treturn typeof logger.__attachObservability === \"function\";\n}\n/**\n* Export a tracked exception through the adapter sink, mirroring the\n* DualLogger dual-write shape (`errorId`/`domain`/`category`/`details`/`cause`\n* when present on a MastraError-like value). Never throws into the caller.\n*/\nfunction exportTrackedException(ctx, error, metadata) {\n\tif (!ctx?.options.export) return;\n\ttry {\n\t\tconst mastraError = error;\n\t\tctx.getLogSink()?.error(error.message, {\n\t\t\t...mastraError.id !== void 0 ? { errorId: mastraError.id } : {},\n\t\t\t...mastraError.domain !== void 0 ? { domain: mastraError.domain } : {},\n\t\t\t...mastraError.category !== void 0 ? { category: mastraError.category } : {},\n\t\t\t...mastraError.details !== void 0 ? { details: mastraError.details } : {},\n\t\t\t...error.cause instanceof Error ? { cause: error.cause.message } : {},\n\t\t\t...metadata\n\t\t});\n\t} catch {}\n}\n/**\n* Adapt IMastraLogger's variadic args into the structured `data` payload of\n* an exported log record. Extracts the first plain object as data,\n* serializes an Error arg, and collects remaining primitives under `args`\n* so the derived record preserves all context from the native call.\n*/\nfunction buildLogRecordData(args) {\n\tconst objectData = args.find((arg) => arg !== null && typeof arg === \"object\" && !Array.isArray(arg) && !(arg instanceof Error));\n\tconst errorArg = args.find((arg) => arg instanceof Error);\n\tconst extraArgs = args.filter((arg) => arg !== objectData && arg !== errorArg);\n\tif (!objectData && !errorArg && extraArgs.length === 0) return void 0;\n\treturn {\n\t\t...objectData ?? {},\n\t\t...errorArg ? { error: {\n\t\t\tname: errorArg.name,\n\t\t\tmessage: errorArg.message,\n\t\t\tstack: errorArg.stack\n\t\t} } : {},\n\t\t...extraArgs.length > 0 ? { args: extraArgs } : {}\n\t};\n}\n//#endregion\n//#region src/logger/index.ts\nconst RegisteredLogger = {\n\tAGENT: \"AGENT\",\n\tOBSERVABILITY: \"OBSERVABILITY\",\n\tAUTH: \"AUTH\",\n\tBROWSER: \"BROWSER\",\n\tNETWORK: \"NETWORK\",\n\tWORKFLOW: \"WORKFLOW\",\n\tLLM: \"LLM\",\n\tTTS: \"TTS\",\n\tVOICE: \"VOICE\",\n\tVECTOR: \"VECTOR\",\n\tBUNDLER: \"BUNDLER\",\n\tDEPLOYER: \"DEPLOYER\",\n\tMEMORY: \"MEMORY\",\n\tSTORAGE: \"STORAGE\",\n\tEMBEDDINGS: \"EMBEDDINGS\",\n\tMCP_SERVER: \"MCP_SERVER\",\n\tSERVER_CACHE: \"SERVER_CACHE\",\n\tSERVER: \"SERVER\",\n\tWORKSPACE: \"WORKSPACE\",\n\tCHANNEL: \"CHANNEL\"\n};\nconst LogLevel = {\n\tDEBUG: \"debug\",\n\tINFO: \"info\",\n\tWARN: \"warn\",\n\tERROR: \"error\",\n\tNONE: \"silent\"\n};\nvar LoggerTransport = class extends Transform {\n\tconstructor(opts = {}) {\n\t\tsuper({\n\t\t\t...opts,\n\t\t\tobjectMode: true\n\t\t});\n\t}\n\tasync listLogsByRunId(_args) {\n\t\treturn {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: _args?.page ?? 1,\n\t\t\tperPage: _args?.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n\tasync listLogs(_args) {\n\t\treturn {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: _args?.page ?? 1,\n\t\t\tperPage: _args?.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n};\nconst createCustomTransport = (stream, listLogs, listLogsByRunId) => {\n\tlet transport = stream;\n\tif (listLogs) transport.listLogs = listLogs;\n\tif (listLogsByRunId) transport.listLogsByRunId = listLogsByRunId;\n\treturn transport;\n};\nvar MastraLogger = class {\n\tname;\n\tlevel;\n\ttransports;\n\tconstructor(options = {}) {\n\t\tthis.name = options.name || \"Mastra\";\n\t\tthis.level = options.level || LogLevel.ERROR;\n\t\tthis.transports = new Map(Object.entries(options.transports || {}));\n\t}\n\tgetTransports() {\n\t\treturn this.transports;\n\t}\n\ttrackException(_error, _metadata) {}\n\tasync listLogs(transportId, params) {\n\t\tif (!transportId || !this.transports.has(transportId)) return {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: params?.page ?? 1,\n\t\t\tperPage: params?.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t\treturn this.transports.get(transportId).listLogs?.(params) ?? {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: params?.page ?? 1,\n\t\t\tperPage: params?.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n\tasync listLogsByRunId({ transportId, runId, fromDate, toDate, logLevel, filters, page, perPage }) {\n\t\tif (!transportId || !this.transports.has(transportId) || !runId) return {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: page ?? 1,\n\t\t\tperPage: perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t\treturn this.transports.get(transportId).listLogsByRunId?.({\n\t\t\trunId,\n\t\t\tfromDate,\n\t\t\ttoDate,\n\t\t\tlogLevel,\n\t\t\tfilters,\n\t\t\tpage,\n\t\t\tperPage\n\t\t}) ?? {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: page ?? 1,\n\t\t\tperPage: perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n};\nvar ConsoleLogger = class ConsoleLogger extends MastraLogger {\n\tcomponent;\n\tfilter;\n\t#adapterContext;\n\tconstructor(options = {}) {\n\t\tsuper(options);\n\t\tthis.component = options.component;\n\t\tthis.filter = options.filter;\n\t}\n\t/**\n\t* Adapter hook (see `AdaptableLogger`): enables native trace correlation\n\t* (trace_id/span_id appended to console output) and observability export\n\t* derived from the same record. Called by Mastra during setup.\n\t*/\n\t__attachObservability(ctx) {\n\t\tthis.#adapterContext = ctx;\n\t}\n\tchild(componentOrBindings) {\n\t\tconst component = typeof componentOrBindings === \"string\" ? componentOrBindings : componentOrBindings?.component ?? this.component;\n\t\tconst child = new ConsoleLogger({\n\t\t\tname: this.name,\n\t\t\tlevel: this.level,\n\t\t\tcomponent,\n\t\t\tfilter: this.filter\n\t\t});\n\t\tif (this.#adapterContext) child.__attachObservability(this.#adapterContext);\n\t\treturn child;\n\t}\n\t/**\n\t* Native-record correlation: when a span is active, append the trace\n\t* fields object to the console args so every destination sees them.\n\t*/\n\t#correlate(args) {\n\t\tconst ctx = this.#adapterContext;\n\t\tif (!ctx?.options.correlation) return args;\n\t\ttry {\n\t\t\tconst fields = ctx.resolveTraceFields();\n\t\t\treturn fields ? [...args, fields] : args;\n\t\t} catch {\n\t\t\treturn args;\n\t\t}\n\t}\n\t/**\n\t* Export the record derived from the same native call to observability.\n\t* Mirrors DualLogger semantics: export is independent of the console\n\t* level filter, and never throws into the caller.\n\t*/\n\t#export(level, message, args) {\n\t\tconst ctx = this.#adapterContext;\n\t\tif (!ctx?.options.export) return;\n\t\ttry {\n\t\t\tctx.getLogSink()?.[level](message, buildLogRecordData(args));\n\t\t} catch {}\n\t}\n\tshouldLog(level, message, args) {\n\t\tif (!this.filter) return true;\n\t\ttry {\n\t\t\treturn this.filter({\n\t\t\t\tcomponent: this.component,\n\t\t\t\tlevel,\n\t\t\t\tmessage,\n\t\t\t\targs\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tconsole.error(`[Logger] Filter error for component=${this.component} level=${level}:`, e);\n\t\t\treturn true;\n\t\t}\n\t}\n\tprefix() {\n\t\treturn this.component ? `[${this.component}] ` : \"\";\n\t}\n\tdebug(message, ...args) {\n\t\tif (this.level === LogLevel.DEBUG && this.shouldLog(LogLevel.DEBUG, message, args)) console.info(`${this.prefix()}${message}`, ...this.#correlate(args));\n\t\tthis.#export(\"debug\", message, args);\n\t}\n\tinfo(message, ...args) {\n\t\tif ((this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) && this.shouldLog(LogLevel.INFO, message, args)) console.info(`${this.prefix()}${message}`, ...this.#correlate(args));\n\t\tthis.#export(\"info\", message, args);\n\t}\n\twarn(message, ...args) {\n\t\tif ((this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) && this.shouldLog(LogLevel.WARN, message, args)) console.warn(`${this.prefix()}${message}`, ...this.#correlate(args));\n\t\tthis.#export(\"warn\", message, args);\n\t}\n\terror(message, ...args) {\n\t\tif ((this.level === LogLevel.ERROR || this.level === LogLevel.WARN || this.level === LogLevel.INFO || this.level === LogLevel.DEBUG) && this.shouldLog(LogLevel.ERROR, message, args)) console.error(`${this.prefix()}${message}`, ...this.#correlate(args));\n\t\tthis.#export(\"error\", message, args);\n\t}\n\ttrackException(error, metadata) {\n\t\texportTrackedException(this.#adapterContext, error, metadata);\n\t}\n\tasync listLogs(_transportId, _params) {\n\t\treturn {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: _params?.page ?? 1,\n\t\t\tperPage: _params?.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n\tasync listLogsByRunId(_args) {\n\t\treturn {\n\t\t\tlogs: [],\n\t\t\ttotal: 0,\n\t\t\tpage: _args.page ?? 1,\n\t\t\tperPage: _args.perPage ?? 100,\n\t\t\thasMore: false\n\t\t};\n\t}\n};\n//#endregion\nexport { ConsoleLogger, LogLevel, LoggerTransport, MastraLogger, RegisteredLogger, buildLogRecordData, createCustomTransport, exportTrackedException, isAdaptableLogger };\n\n//# sourceMappingURL=index.js.map","import { ConsoleLogger, RegisteredLogger } from \"../logger/index.js\";\n//#region src/base/MastraBase.ts\nvar MastraBase = class {\n\tcomponent = RegisteredLogger.LLM;\n\tlogger;\n\tname;\n\t#rawConfig;\n\tconstructor({ component, name, rawConfig }) {\n\t\tthis.component = component || RegisteredLogger.LLM;\n\t\tthis.name = name;\n\t\tthis.#rawConfig = rawConfig;\n\t\tthis.logger = new ConsoleLogger({ name: `${this.component} - ${this.name}` });\n\t}\n\t/**\n\t* Returns the raw storage configuration this primitive was created from,\n\t* or undefined if it was created from code.\n\t*/\n\ttoRawConfig() {\n\t\treturn this.#rawConfig;\n\t}\n\t/**\n\t* Sets the raw storage configuration for this primitive.\n\t* @internal\n\t*/\n\t__setRawConfig(rawConfig) {\n\t\tthis.#rawConfig = rawConfig;\n\t}\n\t/**\n\t* Set the logger for the agent\n\t* @param logger\n\t*/\n\t__setLogger(logger) {\n\t\tthis.logger = \"child\" in logger && typeof logger.child === \"function\" ? logger.child({ component: this.component }) : logger;\n\t}\n};\n//#endregion\nexport { MastraBase };\n\n//# sourceMappingURL=index.js.map","import { MastraBase } from \"@internal/core/base\";\nimport { PassThrough } from \"stream\";\nimport { experimental_generateSpeech, experimental_transcribe } from \"@internal/ai-sdk-v5\";\n//#region src/voice/voice.ts\nvar MastraVoice = class extends MastraBase {\n\tlisteningModel;\n\tspeechModel;\n\tspeaker;\n\trealtimeConfig;\n\tconstructor({ listeningModel, speechModel, speaker, realtimeConfig, name } = {}) {\n\t\tsuper({\n\t\t\tcomponent: \"VOICE\",\n\t\t\tname\n\t\t});\n\t\tthis.listeningModel = listeningModel;\n\t\tthis.speechModel = speechModel;\n\t\tthis.speaker = speaker;\n\t\tthis.realtimeConfig = realtimeConfig;\n\t}\n\t/**\n\t* Custom serialization for tracing/observability spans.\n\t* Excludes `apiKey` from listeningModel / speechModel / realtimeConfig\n\t* and any provider-specific state held by subclasses. Subclasses that\n\t* need to expose additional non-sensitive fields can override.\n\t*/\n\tserializeForSpan() {\n\t\treturn {\n\t\t\tcomponent: \"VOICE\",\n\t\t\tname: this.name,\n\t\t\tspeaker: this.speaker,\n\t\t\tlisteningModel: this.listeningModel ? { name: this.listeningModel.name } : void 0,\n\t\t\tspeechModel: this.speechModel ? { name: this.speechModel.name } : void 0,\n\t\t\trealtimeModel: this.realtimeConfig?.model\n\t\t};\n\t}\n\tupdateConfig(_options) {\n\t\tthis.logger.debug(\"updateConfig not implemented by this voice provider\");\n\t}\n\t/**\n\t* Initializes a WebSocket or WebRTC connection for real-time communication\n\t* @returns Promise that resolves when the connection is established\n\t*/\n\tasync connect(_options) {\n\t\tthis.logger.debug(\"connect not implemented by this voice provider\");\n\t}\n\t/**\n\t* Relay audio data to the voice provider for real-time processing\n\t* @param audioData Audio data to relay\n\t*/\n\tasync send(_audioData) {\n\t\tthis.logger.debug(\"relay not implemented by this voice provider\");\n\t}\n\t/**\n\t* Trigger voice providers to respond\n\t*/\n\tasync answer(_options) {\n\t\tthis.logger.debug(\"answer not implemented by this voice provider\");\n\t}\n\t/**\n\t* Equip the voice provider with instructions\n\t* @param instructions Instructions to add\n\t*/\n\taddInstructions(_instructions) {}\n\t/**\n\t* Equip the voice provider with tools\n\t* @param tools Array of tools to add\n\t*/\n\taddTools(_tools) {}\n\t/**\n\t* Disconnect from the WebSocket or WebRTC connection\n\t*/\n\tclose() {\n\t\tthis.logger.debug(\"close not implemented by this voice provider\");\n\t}\n\t/**\n\t* Register an event listener\n\t* @param event Event name (e.g., 'speaking', 'writing', 'error')\n\t* @param callback Callback function that receives event data\n\t*/\n\ton(_event, _callback) {\n\t\tthis.logger.debug(\"on not implemented by this voice provider\");\n\t}\n\t/**\n\t* Remove an event listener\n\t* @param event Event name (e.g., 'speaking', 'writing', 'error')\n\t* @param callback Callback function to remove\n\t*/\n\toff(_event, _callback) {\n\t\tthis.logger.debug(\"off not implemented by this voice provider\");\n\t}\n\t/**\n\t* Get available speakers/voices\n\t* @returns Array of available voice IDs and their metadata\n\t*/\n\tgetSpeakers() {\n\t\tthis.logger.debug(\"getSpeakers not implemented by this voice provider\");\n\t\treturn Promise.resolve([]);\n\t}\n\t/**\n\t* Get available speakers/voices\n\t* @returns Array of available voice IDs and their metadata\n\t*/\n\tgetListener() {\n\t\tthis.logger.debug(\"getListener not implemented by this voice provider\");\n\t\treturn Promise.resolve({ enabled: false });\n\t}\n};\n//#endregion\n//#region src/voice/aisdk/speech.ts\nvar AISDKSpeech = class extends MastraVoice {\n\tmodel;\n\tdefaultVoice;\n\tconstructor(model, options) {\n\t\tsuper({ name: \"ai-sdk-speech\" });\n\t\tthis.model = model;\n\t\tthis.defaultVoice = options?.voice;\n\t}\n\tasync speak(input, options) {\n\t\tconst text = typeof input === \"string\" ? input : await this.streamToText(input);\n\t\tconst result = await experimental_generateSpeech({\n\t\t\tmodel: this.model,\n\t\t\ttext,\n\t\t\tvoice: options?.speaker || this.defaultVoice,\n\t\t\tlanguage: options?.language,\n\t\t\tproviderOptions: options?.providerOptions,\n\t\t\tabortSignal: options?.abortSignal,\n\t\t\theaders: options?.headers\n\t\t});\n\t\tconst stream = new PassThrough();\n\t\tstream.end(Buffer.from(result.audio.uint8Array));\n\t\treturn stream;\n\t}\n\tasync listen() {\n\t\tthrow new Error(\"AI SDK speech models do not support transcription. Use AISDKTranscription instead.\");\n\t}\n\tasync getSpeakers() {\n\t\treturn [];\n\t}\n\tasync getListener() {\n\t\treturn { enabled: false };\n\t}\n\tasync streamToText(stream) {\n\t\tconst chunks = [];\n\t\tfor await (const chunk of stream) chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));\n\t\treturn Buffer.concat(chunks).toString(\"utf-8\");\n\t}\n};\n//#endregion\n//#region src/voice/aisdk/transcription.ts\nvar AISDKTranscription = class extends MastraVoice {\n\tmodel;\n\tconstructor(model) {\n\t\tsuper({ name: \"ai-sdk-transcription\" });\n\t\tthis.model = model;\n\t}\n\tasync speak() {\n\t\tthrow new Error(\"AI SDK transcription models do not support text-to-speech. Use AISDKSpeech instead.\");\n\t}\n\tasync getSpeakers() {\n\t\treturn [];\n\t}\n\tasync getListener() {\n\t\treturn { enabled: true };\n\t}\n\t/**\n\t* Transcribe audio to text\n\t* For enhanced metadata (segments, language, duration), use AI SDK's transcribe() directly\n\t*/\n\tasync listen(audioStream, options) {\n\t\tconst audioBuffer = await this.convertToBuffer(audioStream);\n\t\treturn (await experimental_transcribe({\n\t\t\tmodel: this.model,\n\t\t\taudio: audioBuffer,\n\t\t\tproviderOptions: options?.providerOptions,\n\t\t\tabortSignal: options?.abortSignal,\n\t\t\theaders: options?.headers\n\t\t})).text;\n\t}\n\tasync convertToBuffer(audio) {\n\t\tif (Buffer.isBuffer(audio)) return audio;\n\t\tif (audio instanceof Uint8Array) return Buffer.from(audio);\n\t\tif (typeof audio === \"string\") return Buffer.from(audio, \"base64\");\n\t\tconst chunks = [];\n\t\tfor await (const chunk of audio) chunks.push(Buffer.isBuffer(chunk) ? chunk : Buffer.from(chunk));\n\t\treturn Buffer.concat(chunks);\n\t}\n};\n//#endregion\nexport { AISDKSpeech as n, MastraVoice as r, AISDKTranscription as t };\n\n//# sourceMappingURL=aisdk-C_K-VCwq.js.map","/**\n * Curated voices served by the Simba 3 generation models (`simba-3.0` and\n * `simba-3.2`). The classic catalog voices in `SPEECHIFY_VOICES` are not\n * served by those models and return an error. `simba-3.2` additionally\n * accepts cloned voices manually approved by Speechify.\n */\nexport const SIMBA_3_VOICES = [\n 'beatrice_32',\n 'dominic_32',\n 'edmund_32',\n 'geffen_32',\n 'harper_32',\n 'hugh_32',\n 'imogen_32',\n 'wyatt_32',\n] as const;\n\nexport const SPEECHIFY_VOICES = [\n 'henry',\n 'bwyneth',\n 'carly',\n 'kristy',\n 'oliver',\n 'tasha',\n 'joe',\n 'lisa',\n 'george',\n 'emily',\n 'rob',\n 'russell',\n 'benjamin',\n 'michael',\n 'kim',\n 'ankit',\n 'arun',\n 'carol',\n 'helen',\n 'julie',\n 'linda',\n 'mark',\n 'nick',\n 'elijah',\n 'beverly',\n 'collin',\n 'erin',\n 'jack',\n 'jesse',\n 'ken',\n 'lindsey',\n 'monica',\n 'phil',\n 'ron',\n 'stacy',\n 'archie',\n 'evelyn',\n 'freddie',\n 'harper',\n 'jacob',\n 'james',\n 'mason',\n 'victoria',\n 'christina',\n 'douglas',\n 'lauren',\n 'patricia',\n 'jennifer',\n 'robert',\n 'peter',\n 'jeremy',\n 'barbara',\n 'susan',\n 'charles',\n 'harold',\n 'sarah',\n 'karen',\n 'anthony',\n 'donald',\n 'paul',\n 'steven',\n 'andrew',\n 'kenneth',\n 'joshua',\n 'betty',\n 'margaret',\n 'kyle',\n 'edward',\n 'ronald',\n 'timothy',\n 'sandra',\n 'dorothy',\n 'jeffrey',\n 'kimberly',\n 'donna',\n 'walter',\n 'megan',\n 'richard',\n 'amanda',\n 'melissa',\n 'deborah',\n 'gary',\n 'rebecca',\n 'sharon',\n 'cynthia',\n 'kathleen',\n 'joan',\n 'shirley',\n 'angela',\n 'anna',\n 'brenda',\n 'larry',\n 'keith',\n 'scott',\n 'pamela',\n 'samuel',\n 'gregory',\n 'samantha',\n 'katherine',\n 'christine',\n 'frank',\n 'alexander',\n 'raymond',\n 'debra',\n 'patrick',\n 'catherine',\n 'carolyn',\n 'janet',\n 'ruth',\n 'zachary',\n 'heather',\n 'diane',\n 'dennis',\n 'jerry',\n 'tyler',\n 'aaron',\n 'virginia',\n 'joyce',\n 'judith',\n 'kelly',\n 'nathan',\n 'terry',\n 'carl',\n 'gerald',\n 'jaqueline',\n 'cheryl',\n 'christian',\n 'rohit',\n 'gloria',\n 'arthur',\n 'austin',\n 'sean',\n 'martha',\n 'randy',\n 'ralph',\n 'roy',\n 'alan',\n 'logan',\n 'willie',\n 'kathryn',\n 'frances',\n 'madison',\n 'bruce',\n 'billy',\n 'jordan',\n 'bryan',\n 'dylan',\n 'vincent',\n 'eugene',\n 'janice',\n 'jean',\n 'abigail',\n 'alice',\n 'bobby',\n 'julia',\n 'johnny',\n 'judy',\n 'bradley',\n 'hunter',\n 'dale',\n 'howard',\n 'fred',\n 'danielle',\n 'marilyn',\n 'blake',\n 'doris',\n 'denise',\n 'issac',\n 'theresa',\n 'natalie',\n 'aiden',\n 'brittany',\n 'charlotte',\n 'marie',\n 'kayla',\n 'alexis',\n 'lori',\n 'landon',\n 'tiffany',\n 'marcus',\n 'martin',\n 'curtis',\n 'kathy',\n 'todd',\n 'leonard',\n 'calvin',\n 'rose',\n 'ava',\n 'bonnie',\n 'peggy',\n 'edwin',\n 'don',\n 'ruby',\n 'crystal',\n 'craig',\n 'norma',\n 'paula',\n 'annie',\n 'shawn',\n 'lillian',\n 'robin',\n 'evan',\n 'garrette',\n 'francis',\n 'danny',\n 'stanley',\n 'lucy',\n 'jeffery',\n 'herbert',\n 'lee',\n 'april',\n 'anne',\n 'tammy',\n 'trevor',\n 'eleanor',\n 'regina',\n 'carrie',\n 'leah',\n 'beth',\n 'cody',\n 'shane',\n 'dana',\n 'allison',\n 'dawn',\n 'julian',\n 'wendy',\n 'travis',\n 'florence',\n 'tracy',\n 'adrian',\n 'phillis',\n 'carole',\n 'mildred',\n 'cameron',\n 'chad',\n 'connie',\n 'gladys',\n 'arlene',\n 'jana',\n 'leona',\n 'miriam',\n 'lorrie',\n 'velma',\n 'eduardo',\n 'bennie',\n 'rene',\n 'ed',\n 'stuart',\n 'terrence',\n 'delbert',\n 'colin',\n 'susanne',\n 'hugo',\n 'ignacio',\n 'sheldon',\n 'josefina',\n 'corinne',\n 'lana',\n 'cherry',\n 'erick',\n 'frankie',\n 'stewart',\n 'claudette',\n 'doyle',\n 'darrel',\n 'janine',\n 'simone',\n 'casey',\n 'leta',\n 'rogelio',\n 'lorraine',\n 'terence',\n 'santiago',\n 'alonzo',\n 'benny',\n 'elisa',\n 'dee',\n 'bert',\n 'elbert',\n 'charmaine',\n 'roslyn',\n 'shelley',\n 'ramiro',\n 'noel',\n 'mercedes',\n 'christie',\n 'laurel',\n 'spencer',\n 'pat',\n 'dorthy',\n 'jeanie',\n 'clare',\n 'aileen',\n 'grady',\n 'deana',\n 'cornelius',\n 'cecelia',\n 'maryann',\n 'rolando',\n 'lamar',\n 'susana',\n 'katharine',\n 'clay',\n 'liza',\n 'jerri',\n 'rochelle',\n 'cathy',\n 'percy',\n 'dexter',\n 'maribel',\n 'rosemarie',\n 'bradford',\n 'kari',\n 'nikki',\n 'bernadette',\n 'eugenia',\n 'merie',\n 'darie',\n 'amon',\n 'moses',\n 'concetta',\n 'irvin',\n 'rodolfo',\n 'christi',\n 'roman',\n 'janie',\n 'marcy',\n 'lindy',\n 'tommie',\n 'darnell',\n 'randal',\n 'selena',\n 'shari',\n 'antoinette',\n 'timmy',\n 'darrin',\n 'margo',\n 'sherri',\n 'erika',\n 'robbie',\n 'marcella',\n 'lela',\n 'winston',\n 'jeannine',\n 'brendan',\n 'christa',\n 'deloris',\n 'toby',\n 'elva',\n 'van',\n 'abel',\n 'myron',\n 'gracie',\n 'gwen',\n 'melba',\n 'boyd',\n 'shawna',\n 'courtney',\n 'marlena',\n 'cathie',\n 'ramesh',\n 'rita',\n 'joel',\n 'derek',\n 'earl',\n 'brett',\n 'ellis',\n 'ian',\n 'oscar',\n 'edna',\n 'ethel',\n 'gene',\n 'shannon',\n 'sheila',\n 'dustin',\n 'ellen',\n 'hilda',\n 'ray',\n 'marjorie',\n 'sylvia',\n 'barry',\n 'melvin',\n 'thelma',\n 'cindy',\n 'miranda',\n 'bernard',\n 'carlton',\n 'juanita',\n 'darrell',\n 'erik',\n 'jeremiah',\n 'nicolas',\n 'gordon',\n 'violet',\n 'mona',\n 'glen',\n 'willis',\n 'harvey',\n 'rudolph',\n 'preston',\n 'cole',\n 'june',\n 'pauline',\n 'leo',\n 'earnest',\n 'devin',\n 'audrey',\n 'claire',\n 'vivian',\n 'goldie',\n 'tommy',\n 'allen',\n 'glenn',\n 'wilson',\n 'jill',\n 'loretta',\n 'mabel',\n 'marsha',\n 'lillie',\n 'minnie',\n 'essie',\n 'madge',\n 'viola',\n 'nellie',\n 'pearl',\n 'marvin',\n 'mae',\n 'levi',\n 'lucille',\n 'hazel',\n 'nathaniel',\n 'lydia',\n 'bertha',\n 'ursula',\n 'kay',\n 'sue',\n 'dean',\n 'verna',\n 'teri',\n 'edith',\n 'dan',\n 'lewis',\n 'harriett',\n 'clifford',\n 'genevieve',\n 'colleen',\n 'gilbert',\n 'patrice',\n 'jared',\n 'elaine',\n 'maureen',\n 'edmund',\n 'nina',\n 'georgia',\n 'garrett',\n 'renee',\n 'bessie',\n 'leslie',\n 'max',\n 'leon',\n 'fannie',\n 'lowell',\n 'veronica',\n 'vanessa',\n 'joy',\n 'jim',\n 'faith',\n 'valerie',\n 'wanda',\n 'steve',\n 'naomi',\n 'miles',\n 'marcia',\n 'brent',\n 'clinton',\n 'jon',\n 'marshall',\n 'roberta',\n 'alexandra',\n 'doreen',\n 'daisy',\n 'della',\n 'minerva',\n 'cedric',\n 'patsy',\n 'kerry',\n 'lena',\n 'gregg',\n 'lois',\n 'kurt',\n 'lorene',\n 'susie',\n 'nora',\n 'lucinda',\n 'mathew',\n 'flora',\n 'rosie',\n 'sherman',\n 'lance',\n 'darcy',\n 'mattie',\n 'madeline',\n 'sylvester',\n 'cory',\n 'anita',\n 'allan',\n 'lula',\n 'nell',\n 'priscilla',\n 'kristin',\n 'rosemary',\n 'roosevelt',\n 'geneva',\n 'jeannette',\n 'bob',\n 'esther',\n 'michele',\n 'forrest',\n 'wilbert',\n 'cathleen',\n 'jaime',\n 'dwayne',\n 'inez',\n 'alberto',\n 'lynne',\n 'maxine',\n 'wilma',\n 'taylor',\n 'angelina',\n 'hope',\n 'margie',\n 'myrtle',\n 'misty',\n 'jimmie',\n 'eunice',\n 'everett',\n 'miracle',\n 'billie',\n 'leland',\n 'jackie',\n 'kristina',\n 'johnnie',\n 'isaac',\n 'bobbie',\n 'tonya',\n 'reba',\n 'kristine',\n 'amelia',\n 'cassandra',\n 'angie',\n 'maude',\n 'nichole',\n 'marguerite',\n 'justine',\n 'kelli',\n 'mandy',\n 'jeri',\n 'darla',\n 'shelia',\n 'jacquelin',\n 'cara',\n 'kellie',\n 'jolene',\n 'chelsea',\n 'autumn',\n 'glenda',\n 'lolita',\n 'jeanne',\n 'sherrie',\n 'toni',\n 'becky',\n 'jennie',\n 'jenna',\n 'leigh',\n 'cristina',\n 'blanche',\n 'clarissa',\n 'betsy',\n 'bridget',\n 'ginger',\n 'faye',\n 'candice',\n 'jaclyn',\n 'krista',\n 'marisa',\n 'gayle',\n 'meredith',\n 'angelica',\n 'rachael',\n 'candy',\n 'trisha',\n 'sandy',\n 'holly',\n 'alicia',\n 'melinda',\n 'geraldine',\n 'tara',\n 'isabel',\n 'adrienne',\n 'terra',\n 'rubye',\n 'antonia',\n 'guadalupe',\n 'cheri',\n 'janelle',\n 'constance',\n 'robyn',\n 'jodi',\n 'krystal',\n 'rosalie',\n 'deanna',\n 'debbie',\n 'josie',\n 'ronda',\n 'paulette',\n 'belinda',\n 'alton',\n 'rudy',\n 'kelvin',\n 'damon',\n 'johnathan',\n 'cesar',\n 'ira',\n 'horace',\n 'grant',\n 'lionel',\n 'wilbur',\n 'jake',\n 'jody',\n 'rickey',\n 'lester',\n 'pablo',\n 'neal',\n 'mack',\n 'orlando',\n 'alfonso',\n 'ernesto',\n 'rex',\n 'lynn',\n 'matt',\n 'lyle',\n 'kristopher',\n 'hubert',\n 'kenny',\n 'doug',\n 'sammy',\n 'homer',\n 'wendell',\n 'woodrow',\n 'felipe',\n 'garry',\n 'pete',\n 'marco',\n 'rufus',\n 'owen',\n 'bryant',\n 'abraham',\n 'irving',\n 'jermaine',\n 'julius',\n 'marty',\n 'alejandro',\n 'carmen',\n 'carlos',\n 'celia',\n 'lucas',\n 'luiza',\n 'diogo',\n 'agueda',\n 'raphael',\n 'elise',\n 'frederick',\n 'andra',\n 'frederik',\n 'freja',\n 'daan',\n 'lotte',\n 'eino',\n 'helmi',\n 'jakob',\n 'frida',\n 'kostas',\n 'eleni',\n 'lazzaro',\n 'alessia',\n 'mart',\n 'liis',\n 'trinh',\n 'thoa',\n 'lesya',\n 'taras',\n 'mikhail',\n 'olga',\n 'axel',\n 'ebba',\n 'hemant',\n 'priya',\n 'aicha',\n 'ismail',\n 'moshe',\n 'inbar',\n 'gil',\n 'lital',\n 'yusuf',\n 'elif',\n 'dominika',\n 'michal',\n] as const;\n\nexport type SpeechifyVoiceId = (typeof SPEECHIFY_VOICES)[number] | (typeof SIMBA_3_VOICES)[number];\n","import { Readable } from 'node:stream';\n\nimport { MastraVoice } from '@internal/voice';\nimport { Speechify } from '@speechify/api-sdk';\nimport type { AudioStreamRequest, VoiceModelName } from '@speechify/api-sdk';\n\nimport { SIMBA_3_VOICES, SPEECHIFY_VOICES } from './voices';\nimport type { SpeechifyVoiceId } from './voices';\n\n/**\n * Models accepted by the Speechify API. Extends the SDK's `VoiceModelName`\n * with the Simba 3 generation models, which the API accepts but the SDK's\n * type union does not yet include. `simba-3.0` and `simba-3.2` are\n * currently English only and serve only the curated `SIMBA_3_VOICES`\n * (plus, on `simba-3.2`, cloned voices approved by Speechify) — the\n * classic catalog voices return an error on them.\n */\ntype SpeechifyModel = VoiceModelName | 'simba-3.0' | 'simba-3.2';\n\nconst isSimba3Model = (model: string | undefined) => model === 'simba-3.0' || model === 'simba-3.2';\n\ninterface SpeechifyConfig {\n name?: SpeechifyModel;\n apiKey?: string;\n}\n\nexport class SpeechifyVoice extends MastraVoice {\n private client: Speechify;\n\n constructor({ speechModel, speaker }: { speechModel?: SpeechifyConfig; speaker?: SpeechifyVoiceId } = {}) {\n const modelName = speechModel?.name ?? 'simba-english';\n super({\n speechModel: {\n name: modelName,\n apiKey: speechModel?.apiKey ?? process.env.SPEECHIFY_API_KEY,\n },\n // The Simba 3 models serve only the curated SIMBA_3_VOICES, so the\n // default speaker has to follow the configured model.\n speaker: speaker ?? (isSimba3Model(modelName) ? 'harper_32' : 'george'),\n });\n\n const apiKey = speechModel?.apiKey ?? process.env.SPEECHIFY_API_KEY;\n if (!apiKey) {\n throw new Error('SPEECHIFY_API_KEY is not set');\n }\n\n this.client = new Speechify({ apiKey });\n }\n\n async getSpeakers() {\n return [...SIMBA_3_VOICES, ...SPEECHIFY_VOICES].map(voice => ({\n voiceId: voice,\n name: voice,\n }));\n }\n\n private async streamToString(stream: NodeJS.ReadableStream): Promise<string> {\n const chunks: Buffer[] = [];\n for await (const chunk of stream) {\n if (typeof chunk === 'string') {\n chunks.push(Buffer.from(chunk));\n } else {\n chunks.push(chunk);\n }\n }\n return Buffer.concat(chunks).toString('utf-8');\n }\n\n async speak(\n input: string | NodeJS.ReadableStream,\n options?: {\n speaker?: string;\n model?: SpeechifyModel;\n } & Omit<AudioStreamRequest, 'voiceId' | 'input' | 'model'>,\n ): Promise<NodeJS.ReadableStream> {\n const text = typeof input === 'string' ? input : await this.streamToString(input);\n\n const { speaker, model, ...streamOptions } = options ?? {};\n const request: AudioStreamRequest = {\n ...streamOptions,\n input: text,\n // The SDK sends `model` to the API verbatim, so casting the wider\n // SpeechifyModel union into its narrower VoiceModelName is safe.\n model: (model || this.speechModel?.name) as VoiceModelName,\n voiceId: (speaker || this.speaker) as SpeechifyVoiceId,\n };\n\n const webStream = await this.client.audioStream(request);\n const reader = webStream.getReader();\n\n const nodeStream = new Readable({\n read: async function () {\n try {\n const { done, value } = await reader.read();\n if (done) {\n this.push(null);\n } else {\n this.push(value);\n }\n } catch (error) {\n this.destroy(error as Error);\n }\n },\n });\n\n nodeStream.on('end', () => {\n reader.releaseLock();\n });\n\n return nodeStream;\n }\n\n /**\n * Checks if listening capabilities are enabled.\n *\n * @returns {Promise<{ enabled: boolean }>}\n */\n async getListener() {\n return { enabled: false };\n }\n\n async listen(\n _input: NodeJS.ReadableStream,\n _options?: Record<string, unknown>,\n ): Promise<string | NodeJS.ReadableStream> {\n throw new Error('Speechify does not support speech recognition');\n }\n}\n\nexport type { SpeechifyConfig, SpeechifyModel, SpeechifyVoiceId };\n"],"mappings":"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ACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;CACA;AACF;;;AClsBA,MAAM,iBAAiB,UAA8B,UAAU,eAAe,UAAU;AAOxF,IAAa,iBAAb,cAAoC,YAAY;CAC9C;CAEA,YAAY,EAAE,aAAa,YAA2E,CAAC,GAAG;EACxG,MAAM,YAAY,aAAa,QAAQ;EACvC,MAAM;GACJ,aAAa;IACX,MAAM;IACN,QAAQ,aAAa,UAAU,QAAQ,IAAI;GAC7C;GAGA,SAAS,YAAY,cAAc,SAAS,IAAI,cAAc;EAChE,CAAC;EAED,MAAM,SAAS,aAAa,UAAU,QAAQ,IAAI;EAClD,IAAI,CAAC,QACH,MAAM,IAAI,MAAM,8BAA8B;EAGhD,KAAK,SAAS,IAAIC,mBAAAA,UAAU,EAAE,OAAO,CAAC;CACxC;CAEA,MAAM,cAAc;EAClB,OAAO,CAAC,GAAG,gBAAgB,GAAG,gBAAgB,CAAC,CAAC,KAAI,WAAU;GAC5D,SAAS;GACT,MAAM;EACR,EAAE;CACJ;CAEA,MAAc,eAAe,UAAgD;EAC3E,MAAM,SAAmB,CAAC;EAC1B,WAAW,MAAM,SAASC,UACxB,IAAI,OAAO,UAAU,UACnB,OAAO,KAAK,OAAO,KAAK,KAAK,CAAC;OAE9B,OAAO,KAAK,KAAK;EAGrB,OAAO,OAAO,OAAO,MAAM,CAAC,CAAC,SAAS,OAAO;CAC/C;CAEA,MAAM,MACJ,OACA,SAIgC;EAChC,MAAM,OAAO,OAAO,UAAU,WAAW,QAAQ,MAAM,KAAK,eAAe,KAAK;EAEhF,MAAM,EAAE,SAAS,OAAO,GAAG,kBAAkB,WAAW,CAAC;EACzD,MAAM,UAA8B;GAClC,GAAG;GACH,OAAO;GAGP,OAAQ,SAAS,KAAK,aAAa;GACnC,SAAU,WAAW,KAAK;EAC5B;EAGA,MAAM,UAAS,MADS,KAAK,OAAO,YAAY,OAAO,EAAA,CAC9B,UAAU;EAEnC,MAAM,aAAa,IAAIC,OAAAA,SAAS,EAC9B,MAAM,iBAAkB;GACtB,IAAI;IACF,MAAM,EAAE,MAAM,UAAU,MAAM,OAAO,KAAK;IAC1C,IAAI,MACF,KAAK,KAAK,IAAI;SAEd,KAAK,KAAK,KAAK;GAEnB,SAAS,OAAO;IACd,KAAK,QAAQ,KAAc;GAC7B;EACF,EACF,CAAC;EAED,WAAW,GAAG,aAAa;GACzB,OAAO,YAAY;EACrB,CAAC;EAED,OAAO;CACT;;;;;;CAOA,MAAM,cAAc;EAClB,OAAO,EAAE,SAAS,MAAM;CAC1B;CAEA,MAAM,OACJ,QACA,UACyC;EACzC,MAAM,IAAI,MAAM,+CAA+C;CACjE;AACF"}
|
package/dist/index.d.ts
CHANGED
|
@@ -21,8 +21,8 @@ export declare class SpeechifyVoice extends MastraVoice {
|
|
|
21
21
|
speaker?: SpeechifyVoiceId;
|
|
22
22
|
});
|
|
23
23
|
getSpeakers(): Promise<{
|
|
24
|
-
voiceId: "
|
|
25
|
-
name: "
|
|
24
|
+
voiceId: "aaron" | "abel" | "abigail" | "abraham" | "adrian" | "adrienne" | "agueda" | "aicha" | "aiden" | "aileen" | "alan" | "alberto" | "alejandro" | "alessia" | "alexander" | "alexandra" | "alexis" | "alfonso" | "alice" | "alicia" | "allan" | "allen" | "allison" | "alonzo" | "alton" | "amanda" | "amelia" | "amon" | "andra" | "andrew" | "angela" | "angelica" | "angelina" | "angie" | "anita" | "ankit" | "anna" | "anne" | "annie" | "anthony" | "antoinette" | "antonia" | "april" | "archie" | "arlene" | "arthur" | "arun" | "audrey" | "austin" | "autumn" | "ava" | "axel" | "barbara" | "barry" | "beatrice_32" | "becky" | "belinda" | "benjamin" | "bennie" | "benny" | "bernadette" | "bernard" | "bert" | "bertha" | "bessie" | "beth" | "betsy" | "betty" | "beverly" | "billie" | "billy" | "blake" | "blanche" | "bob" | "bobbie" | "bobby" | "bonnie" | "boyd" | "bradford" | "bradley" | "brenda" | "brendan" | "brent" | "brett" | "bridget" | "brittany" | "bruce" | "bryan" | "bryant" | "bwyneth" | "calvin" | "cameron" | "candice" | "candy" | "cara" | "carl" | "carlos" | "carlton" | "carly" | "carmen" | "carol" | "carole" | "carolyn" | "carrie" | "casey" | "cassandra" | "catherine" | "cathie" | "cathleen" | "cathy" | "cecelia" | "cedric" | "celia" | "cesar" | "chad" | "charles" | "charlotte" | "charmaine" | "chelsea" | "cheri" | "cherry" | "cheryl" | "christa" | "christi" | "christian" | "christie" | "christina" | "christine" | "cindy" | "claire" | "clare" | "clarissa" | "claudette" | "clay" | "clifford" | "clinton" | "cody" | "cole" | "colin" | "colleen" | "collin" | "concetta" | "connie" | "constance" | "corinne" | "cornelius" | "cory" | "courtney" | "craig" | "cristina" | "crystal" | "curtis" | "cynthia" | "daan" | "daisy" | "dale" | "damon" | "dan" | "dana" | "danielle" | "danny" | "darcy" | "darie" | "darla" | "darnell" | "darrel" | "darrell" | "darrin" | "dawn" | "dean" | "deana" | "deanna" | "debbie" | "deborah" | "debra" | "dee" | "delbert" | "della" | "deloris" | "denise" | "dennis" | "derek" | "devin" | "dexter" | "diane" | "diogo" | "dominic_32" | "dominika" | "don" | "donald" | "donna" | "doreen" | "doris" | "dorothy" | "dorthy" | "doug" | "douglas" | "doyle" | "dustin" | "dwayne" | "dylan" | "earl" | "earnest" | "ebba" | "ed" | "edith" | "edmund" | "edmund_32" | "edna" | "eduardo" | "edward" | "edwin" | "eino" | "elaine" | "elbert" | "eleanor" | "eleni" | "elif" | "elijah" | "elisa" | "elise" | "ellen" | "ellis" | "elva" | "emily" | "erick" | "erik" | "erika" | "erin" | "ernesto" | "essie" | "esther" | "ethel" | "eugene" | "eugenia" | "eunice" | "evan" | "evelyn" | "everett" | "faith" | "fannie" | "faye" | "felipe" | "flora" | "florence" | "forrest" | "frances" | "francis" | "frank" | "frankie" | "fred" | "freddie" | "frederick" | "frederik" | "freja" | "frida" | "garrett" | "garrette" | "garry" | "gary" | "gayle" | "geffen_32" | "gene" | "geneva" | "genevieve" | "george" | "georgia" | "gerald" | "geraldine" | "gil" | "gilbert" | "ginger" | "gladys" | "glen" | "glenda" | "glenn" | "gloria" | "goldie" | "gordon" | "gracie" | "grady" | "grant" | "gregg" | "gregory" | "guadalupe" | "gwen" | "harold" | "harper" | "harper_32" | "harriett" | "harvey" | "hazel" | "heather" | "helen" | "helmi" | "hemant" | "henry" | "herbert" | "hilda" | "holly" | "homer" | "hope" | "horace" | "howard" | "hubert" | "hugh_32" | "hugo" | "hunter" | "ian" | "ignacio" | "imogen_32" | "inbar" | "inez" | "ira" | "irvin" | "irving" | "isaac" | "isabel" | "ismail" | "issac" | "jack" | "jackie" | "jaclyn" | "jacob" | "jacquelin" | "jaime" | "jake" | "jakob" | "james" | "jana" | "janelle" | "janet" | "janice" | "janie" | "janine" | "jaqueline" | "jared" | "jean" | "jeanie" | "jeanne" | "jeannette" | "jeannine" | "jeffery" | "jeffrey" | "jenna" | "jennie" | "jennifer" | "jeremiah" | "jeremy" | "jeri" | "jermaine" | "jerri" | "jerry" | "jesse" | "jill" | "jim" | "jimmie" | "joan" | "jodi" | "jody" | "joe" | "joel" | "johnathan" | "johnnie" | "johnny" | "jolene" | "jon" | "jordan" | "josefina" | "joshua" | "josie" | "joy" | "joyce" | "juanita" | "judith" | "judy" | "julia" | "julian" | "julie" | "julius" | "june" | "justine" | "karen" | "kari" | "katharine" | "katherine" | "kathleen" | "kathryn" | "kathy" | "kay" | "kayla" | "keith" | "kelli" | "kellie" | "kelly" | "kelvin" | "ken" | "kenneth" | "kenny" | "kerry" | "kim" | "kimberly" | "kostas" | "krista" | "kristin" | "kristina" | "kristine" | "kristopher" | "kristy" | "krystal" | "kurt" | "kyle" | "lamar" | "lana" | "lance" | "landon" | "larry" | "laurel" | "lauren" | "lazzaro" | "leah" | "lee" | "leigh" | "lela" | "leland" | "lena" | "leo" | "leon" | "leona" | "leonard" | "leslie" | "lester" | "lesya" | "leta" | "levi" | "lewis" | "liis" | "lillian" | "lillie" | "linda" | "lindsey" | "lindy" | "lionel" | "lisa" | "lital" | "liza" | "logan" | "lois" | "lolita" | "lorene" | "loretta" | "lori" | "lorraine" | "lorrie" | "lotte" | "lowell" | "lucas" | "lucille" | "lucinda" | "lucy" | "luiza" | "lula" | "lydia" | "lyle" | "lynn" | "lynne" | "mabel" | "mack" | "madeline" | "madge" | "madison" | "mae" | "mandy" | "marcella" | "marcia" | "marco" | "marcus" | "marcy" | "margaret" | "margie" | "margo" | "marguerite" | "maribel" | "marie" | "marilyn" | "marisa" | "marjorie" | "mark" | "marlena" | "marsha" | "marshall" | "mart" | "martha" | "martin" | "marty" | "marvin" | "maryann" | "mason" | "mathew" | "matt" | "mattie" | "maude" | "maureen" | "max" | "maxine" | "megan" | "melba" | "melinda" | "melissa" | "melvin" | "mercedes" | "meredith" | "merie" | "michael" | "michal" | "michele" | "mikhail" | "mildred" | "miles" | "minerva" | "minnie" | "miracle" | "miranda" | "miriam" | "misty" | "mona" | "monica" | "moses" | "moshe" | "myron" | "myrtle" | "naomi" | "natalie" | "nathan" | "nathaniel" | "neal" | "nell" | "nellie" | "nichole" | "nick" | "nicolas" | "nikki" | "nina" | "noel" | "nora" | "norma" | "olga" | "oliver" | "orlando" | "oscar" | "owen" | "pablo" | "pamela" | "pat" | "patrice" | "patricia" | "patrick" | "patsy" | "paul" | "paula" | "paulette" | "pauline" | "pearl" | "peggy" | "percy" | "pete" | "peter" | "phil" | "phillis" | "preston" | "priscilla" | "priya" | "rachael" | "ralph" | "ramesh" | "ramiro" | "randal" | "randy" | "raphael" | "ray" | "raymond" | "reba" | "rebecca" | "regina" | "rene" | "renee" | "rex" | "richard" | "rickey" | "rita" | "rob" | "robbie" | "robert" | "roberta" | "robin" | "robyn" | "rochelle" | "rodolfo" | "rogelio" | "rohit" | "rolando" | "roman" | "ron" | "ronald" | "ronda" | "roosevelt" | "rosalie" | "rose" | "rosemarie" | "rosemary" | "rosie" | "roslyn" | "roy" | "ruby" | "rubye" | "rudolph" | "rudy" | "rufus" | "russell" | "ruth" | "samantha" | "sammy" | "samuel" | "sandra" | "sandy" | "santiago" | "sarah" | "scott" | "sean" | "selena" | "shane" | "shannon" | "shari" | "sharon" | "shawn" | "shawna" | "sheila" | "sheldon" | "shelia" | "shelley" | "sherman" | "sherri" | "sherrie" | "shirley" | "simone" | "spencer" | "stacy" | "stanley" | "steve" | "steven" | "stewart" | "stuart" | "sue" | "susan" | "susana" | "susanne" | "susie" | "sylvester" | "sylvia" | "tammy" | "tara" | "taras" | "tasha" | "taylor" | "terence" | "teri" | "terra" | "terrence" | "terry" | "thelma" | "theresa" | "thoa" | "tiffany" | "timmy" | "timothy" | "toby" | "todd" | "tommie" | "tommy" | "toni" | "tonya" | "tracy" | "travis" | "trevor" | "trinh" | "trisha" | "tyler" | "ursula" | "valerie" | "van" | "vanessa" | "velma" | "verna" | "veronica" | "victoria" | "vincent" | "viola" | "violet" | "virginia" | "vivian" | "walter" | "wanda" | "wendell" | "wendy" | "wilbert" | "wilbur" | "willie" | "willis" | "wilma" | "wilson" | "winston" | "woodrow" | "wyatt_32" | "yusuf" | "zachary";
|
|
25
|
+
name: "aaron" | "abel" | "abigail" | "abraham" | "adrian" | "adrienne" | "agueda" | "aicha" | "aiden" | "aileen" | "alan" | "alberto" | "alejandro" | "alessia" | "alexander" | "alexandra" | "alexis" | "alfonso" | "alice" | "alicia" | "allan" | "allen" | "allison" | "alonzo" | "alton" | "amanda" | "amelia" | "amon" | "andra" | "andrew" | "angela" | "angelica" | "angelina" | "angie" | "anita" | "ankit" | "anna" | "anne" | "annie" | "anthony" | "antoinette" | "antonia" | "april" | "archie" | "arlene" | "arthur" | "arun" | "audrey" | "austin" | "autumn" | "ava" | "axel" | "barbara" | "barry" | "beatrice_32" | "becky" | "belinda" | "benjamin" | "bennie" | "benny" | "bernadette" | "bernard" | "bert" | "bertha" | "bessie" | "beth" | "betsy" | "betty" | "beverly" | "billie" | "billy" | "blake" | "blanche" | "bob" | "bobbie" | "bobby" | "bonnie" | "boyd" | "bradford" | "bradley" | "brenda" | "brendan" | "brent" | "brett" | "bridget" | "brittany" | "bruce" | "bryan" | "bryant" | "bwyneth" | "calvin" | "cameron" | "candice" | "candy" | "cara" | "carl" | "carlos" | "carlton" | "carly" | "carmen" | "carol" | "carole" | "carolyn" | "carrie" | "casey" | "cassandra" | "catherine" | "cathie" | "cathleen" | "cathy" | "cecelia" | "cedric" | "celia" | "cesar" | "chad" | "charles" | "charlotte" | "charmaine" | "chelsea" | "cheri" | "cherry" | "cheryl" | "christa" | "christi" | "christian" | "christie" | "christina" | "christine" | "cindy" | "claire" | "clare" | "clarissa" | "claudette" | "clay" | "clifford" | "clinton" | "cody" | "cole" | "colin" | "colleen" | "collin" | "concetta" | "connie" | "constance" | "corinne" | "cornelius" | "cory" | "courtney" | "craig" | "cristina" | "crystal" | "curtis" | "cynthia" | "daan" | "daisy" | "dale" | "damon" | "dan" | "dana" | "danielle" | "danny" | "darcy" | "darie" | "darla" | "darnell" | "darrel" | "darrell" | "darrin" | "dawn" | "dean" | "deana" | "deanna" | "debbie" | "deborah" | "debra" | "dee" | "delbert" | "della" | "deloris" | "denise" | "dennis" | "derek" | "devin" | "dexter" | "diane" | "diogo" | "dominic_32" | "dominika" | "don" | "donald" | "donna" | "doreen" | "doris" | "dorothy" | "dorthy" | "doug" | "douglas" | "doyle" | "dustin" | "dwayne" | "dylan" | "earl" | "earnest" | "ebba" | "ed" | "edith" | "edmund" | "edmund_32" | "edna" | "eduardo" | "edward" | "edwin" | "eino" | "elaine" | "elbert" | "eleanor" | "eleni" | "elif" | "elijah" | "elisa" | "elise" | "ellen" | "ellis" | "elva" | "emily" | "erick" | "erik" | "erika" | "erin" | "ernesto" | "essie" | "esther" | "ethel" | "eugene" | "eugenia" | "eunice" | "evan" | "evelyn" | "everett" | "faith" | "fannie" | "faye" | "felipe" | "flora" | "florence" | "forrest" | "frances" | "francis" | "frank" | "frankie" | "fred" | "freddie" | "frederick" | "frederik" | "freja" | "frida" | "garrett" | "garrette" | "garry" | "gary" | "gayle" | "geffen_32" | "gene" | "geneva" | "genevieve" | "george" | "georgia" | "gerald" | "geraldine" | "gil" | "gilbert" | "ginger" | "gladys" | "glen" | "glenda" | "glenn" | "gloria" | "goldie" | "gordon" | "gracie" | "grady" | "grant" | "gregg" | "gregory" | "guadalupe" | "gwen" | "harold" | "harper" | "harper_32" | "harriett" | "harvey" | "hazel" | "heather" | "helen" | "helmi" | "hemant" | "henry" | "herbert" | "hilda" | "holly" | "homer" | "hope" | "horace" | "howard" | "hubert" | "hugh_32" | "hugo" | "hunter" | "ian" | "ignacio" | "imogen_32" | "inbar" | "inez" | "ira" | "irvin" | "irving" | "isaac" | "isabel" | "ismail" | "issac" | "jack" | "jackie" | "jaclyn" | "jacob" | "jacquelin" | "jaime" | "jake" | "jakob" | "james" | "jana" | "janelle" | "janet" | "janice" | "janie" | "janine" | "jaqueline" | "jared" | "jean" | "jeanie" | "jeanne" | "jeannette" | "jeannine" | "jeffery" | "jeffrey" | "jenna" | "jennie" | "jennifer" | "jeremiah" | "jeremy" | "jeri" | "jermaine" | "jerri" | "jerry" | "jesse" | "jill" | "jim" | "jimmie" | "joan" | "jodi" | "jody" | "joe" | "joel" | "johnathan" | "johnnie" | "johnny" | "jolene" | "jon" | "jordan" | "josefina" | "joshua" | "josie" | "joy" | "joyce" | "juanita" | "judith" | "judy" | "julia" | "julian" | "julie" | "julius" | "june" | "justine" | "karen" | "kari" | "katharine" | "katherine" | "kathleen" | "kathryn" | "kathy" | "kay" | "kayla" | "keith" | "kelli" | "kellie" | "kelly" | "kelvin" | "ken" | "kenneth" | "kenny" | "kerry" | "kim" | "kimberly" | "kostas" | "krista" | "kristin" | "kristina" | "kristine" | "kristopher" | "kristy" | "krystal" | "kurt" | "kyle" | "lamar" | "lana" | "lance" | "landon" | "larry" | "laurel" | "lauren" | "lazzaro" | "leah" | "lee" | "leigh" | "lela" | "leland" | "lena" | "leo" | "leon" | "leona" | "leonard" | "leslie" | "lester" | "lesya" | "leta" | "levi" | "lewis" | "liis" | "lillian" | "lillie" | "linda" | "lindsey" | "lindy" | "lionel" | "lisa" | "lital" | "liza" | "logan" | "lois" | "lolita" | "lorene" | "loretta" | "lori" | "lorraine" | "lorrie" | "lotte" | "lowell" | "lucas" | "lucille" | "lucinda" | "lucy" | "luiza" | "lula" | "lydia" | "lyle" | "lynn" | "lynne" | "mabel" | "mack" | "madeline" | "madge" | "madison" | "mae" | "mandy" | "marcella" | "marcia" | "marco" | "marcus" | "marcy" | "margaret" | "margie" | "margo" | "marguerite" | "maribel" | "marie" | "marilyn" | "marisa" | "marjorie" | "mark" | "marlena" | "marsha" | "marshall" | "mart" | "martha" | "martin" | "marty" | "marvin" | "maryann" | "mason" | "mathew" | "matt" | "mattie" | "maude" | "maureen" | "max" | "maxine" | "megan" | "melba" | "melinda" | "melissa" | "melvin" | "mercedes" | "meredith" | "merie" | "michael" | "michal" | "michele" | "mikhail" | "mildred" | "miles" | "minerva" | "minnie" | "miracle" | "miranda" | "miriam" | "misty" | "mona" | "monica" | "moses" | "moshe" | "myron" | "myrtle" | "naomi" | "natalie" | "nathan" | "nathaniel" | "neal" | "nell" | "nellie" | "nichole" | "nick" | "nicolas" | "nikki" | "nina" | "noel" | "nora" | "norma" | "olga" | "oliver" | "orlando" | "oscar" | "owen" | "pablo" | "pamela" | "pat" | "patrice" | "patricia" | "patrick" | "patsy" | "paul" | "paula" | "paulette" | "pauline" | "pearl" | "peggy" | "percy" | "pete" | "peter" | "phil" | "phillis" | "preston" | "priscilla" | "priya" | "rachael" | "ralph" | "ramesh" | "ramiro" | "randal" | "randy" | "raphael" | "ray" | "raymond" | "reba" | "rebecca" | "regina" | "rene" | "renee" | "rex" | "richard" | "rickey" | "rita" | "rob" | "robbie" | "robert" | "roberta" | "robin" | "robyn" | "rochelle" | "rodolfo" | "rogelio" | "rohit" | "rolando" | "roman" | "ron" | "ronald" | "ronda" | "roosevelt" | "rosalie" | "rose" | "rosemarie" | "rosemary" | "rosie" | "roslyn" | "roy" | "ruby" | "rubye" | "rudolph" | "rudy" | "rufus" | "russell" | "ruth" | "samantha" | "sammy" | "samuel" | "sandra" | "sandy" | "santiago" | "sarah" | "scott" | "sean" | "selena" | "shane" | "shannon" | "shari" | "sharon" | "shawn" | "shawna" | "sheila" | "sheldon" | "shelia" | "shelley" | "sherman" | "sherri" | "sherrie" | "shirley" | "simone" | "spencer" | "stacy" | "stanley" | "steve" | "steven" | "stewart" | "stuart" | "sue" | "susan" | "susana" | "susanne" | "susie" | "sylvester" | "sylvia" | "tammy" | "tara" | "taras" | "tasha" | "taylor" | "terence" | "teri" | "terra" | "terrence" | "terry" | "thelma" | "theresa" | "thoa" | "tiffany" | "timmy" | "timothy" | "toby" | "todd" | "tommie" | "tommy" | "toni" | "tonya" | "tracy" | "travis" | "trevor" | "trinh" | "trisha" | "tyler" | "ursula" | "valerie" | "van" | "vanessa" | "velma" | "verna" | "veronica" | "victoria" | "vincent" | "viola" | "violet" | "virginia" | "vivian" | "walter" | "wanda" | "wendell" | "wendy" | "wilbert" | "wilbur" | "willie" | "willis" | "wilma" | "wilson" | "winston" | "woodrow" | "wyatt_32" | "yusuf" | "zachary";
|
|
26
26
|
}[]>;
|
|
27
27
|
private streamToString;
|
|
28
28
|
speak(input: string | NodeJS.ReadableStream, options?: {
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD;;;;;;;GAOG;AACH,KAAK,cAAc,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,CAAC;AAIjE,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,MAAM,CAAY;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE9C,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAG7E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAC;AAEjD;;;;;;;GAOG;AACH,KAAK,cAAc,GAAG,cAAc,GAAG,WAAW,GAAG,WAAW,CAAC;AAIjE,UAAU,eAAe;IACvB,IAAI,CAAC,EAAE,cAAc,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,cAAe,SAAQ,WAAW;IAC7C,OAAO,CAAC,MAAM,CAAY;IAE1B,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,GAAE;QAAE,WAAW,CAAC,EAAE,eAAe,CAAC;QAAC,OAAO,CAAC,EAAE,gBAAgB,CAAA;KAAO,EAkBvG;IAEK,WAAW;;;SAKhB;YAEa,cAAc;IAYtB,KAAK,CACT,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,cAAc,EACrC,OAAO,CAAC,EAAE;QACR,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,cAAc,CAAC;KACxB,GAAG,IAAI,CAAC,kBAAkB,EAAE,SAAS,GAAG,OAAO,GAAG,OAAO,CAAC,GAC1D,OAAO,CAAC,MAAM,CAAC,cAAc,CAAC,CAoChC;IAED;;;;OAIG;IACG,WAAW;;OAEhB;IAEK,MAAM,CACV,MAAM,EAAE,MAAM,CAAC,cAAc,EAC7B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GACjC,OAAO,CAAC,MAAM,GAAG,MAAM,CAAC,cAAc,CAAC,CAEzC;CACF;AAED,YAAY,EAAE,eAAe,EAAE,cAAc,EAAE,gBAAgB,EAAE,CAAC"}
|