@memori.ai/memori-react 7.34.0 → 7.34.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/dist/components/MemoriWidget/MemoriWidget.js +1 -1
- package/dist/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/dist/components/UploadButton/UploadButton.js +14 -9
- package/dist/components/UploadButton/UploadButton.js.map +1 -1
- package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js +16 -6
- package/dist/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
- package/dist/helpers/utils.d.ts +1 -0
- package/dist/helpers/utils.js +10 -1
- package/dist/helpers/utils.js.map +1 -1
- package/esm/components/MemoriWidget/MemoriWidget.js +2 -2
- package/esm/components/MemoriWidget/MemoriWidget.js.map +1 -1
- package/esm/components/UploadButton/UploadButton.js +14 -9
- package/esm/components/UploadButton/UploadButton.js.map +1 -1
- package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js +16 -6
- package/esm/components/UploadButton/UploadDocuments/UploadDocuments.js.map +1 -1
- package/esm/helpers/utils.d.ts +1 -0
- package/esm/helpers/utils.js +8 -0
- package/esm/helpers/utils.js.map +1 -1
- package/package.json +1 -1
- package/src/components/MemoriWidget/MemoriWidget.tsx +4 -1
- package/src/components/UploadButton/UploadButton.tsx +51 -23
- package/src/components/UploadButton/UploadDocuments/UploadDocuments.tsx +88 -36
- package/src/helpers/utils.ts +13 -0
- package/dist/helpers/sanitizer.d.ts +0 -6
- package/dist/helpers/sanitizer.js +0 -41
- package/dist/helpers/sanitizer.js.map +0 -1
- package/dist/helpers/tts/ttsVoiceUtility.d.ts +0 -158
- package/dist/helpers/tts/ttsVoiceUtility.js +0 -192
- package/dist/helpers/tts/ttsVoiceUtility.js.map +0 -1
- package/dist/helpers/tts/useTTS.d.ts +0 -26
- package/dist/helpers/tts/useTTS.js +0 -294
- package/dist/helpers/tts/useTTS.js.map +0 -1
- package/esm/helpers/sanitizer.d.ts +0 -6
- package/esm/helpers/sanitizer.js +0 -32
- package/esm/helpers/sanitizer.js.map +0 -1
- package/esm/helpers/tts/ttsVoiceUtility.d.ts +0 -158
- package/esm/helpers/tts/ttsVoiceUtility.js +0 -182
- package/esm/helpers/tts/ttsVoiceUtility.js.map +0 -1
- package/esm/helpers/tts/useTTS.d.ts +0 -26
- package/esm/helpers/tts/useTTS.js +0 -290
- package/esm/helpers/tts/useTTS.js.map +0 -1
|
@@ -1,294 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.useTTS = void 0;
|
|
4
|
-
const react_1 = require("react");
|
|
5
|
-
const sanitizer_1 = require("../sanitizer");
|
|
6
|
-
const configuration_1 = require("../configuration");
|
|
7
|
-
const visemeContext_1 = require("../../context/visemeContext");
|
|
8
|
-
function useTTS(config, options = {}, autoStart = false, defaultEnableAudio = true, defaultSpeakerActive = true) {
|
|
9
|
-
const [isPlaying, setIsPlaying] = (0, react_1.useState)(false);
|
|
10
|
-
const [speakerMuted, setSpeakerMuted] = (0, react_1.useState)((0, configuration_1.getLocalConfig)('muteSpeaker', !defaultEnableAudio || !defaultSpeakerActive || autoStart));
|
|
11
|
-
const { addViseme, resetVisemeQueue, startProcessing, stopProcessing, } = (0, visemeContext_1.useViseme)();
|
|
12
|
-
const [hasUserActivatedSpeak, setHasUserActivatedSpeak] = (0, react_1.useState)(false);
|
|
13
|
-
const [error, setError] = (0, react_1.useState)(null);
|
|
14
|
-
const audioRef = (0, react_1.useRef)(null);
|
|
15
|
-
const audioWrapperRef = (0, react_1.useRef)(null);
|
|
16
|
-
const globalSpeakRef = (0, react_1.useRef)(null);
|
|
17
|
-
const visemeLoadedRef = (0, react_1.useRef)(false);
|
|
18
|
-
const apiUrl = options.apiUrl || '/api/tts';
|
|
19
|
-
const loadVisemeData = (0, react_1.useCallback)((visemeData) => {
|
|
20
|
-
resetVisemeQueue();
|
|
21
|
-
visemeLoadedRef.current = false;
|
|
22
|
-
if (visemeData && visemeData.length > 0) {
|
|
23
|
-
console.log(`[useTTS] Loading ${visemeData.length} viseme events`);
|
|
24
|
-
visemeData.forEach(viseme => {
|
|
25
|
-
addViseme(viseme.visemeId, viseme.audioOffset);
|
|
26
|
-
});
|
|
27
|
-
visemeLoadedRef.current = true;
|
|
28
|
-
return true;
|
|
29
|
-
}
|
|
30
|
-
else {
|
|
31
|
-
console.warn('[useTTS] No viseme data available');
|
|
32
|
-
return false;
|
|
33
|
-
}
|
|
34
|
-
}, [addViseme, resetVisemeQueue]);
|
|
35
|
-
const createAudioWrapper = (0, react_1.useCallback)(() => {
|
|
36
|
-
if (!audioRef.current) {
|
|
37
|
-
console.warn('[useTTS] Cannot create audio wrapper: audio element is null');
|
|
38
|
-
return null;
|
|
39
|
-
}
|
|
40
|
-
const wrapper = {
|
|
41
|
-
state: 'running',
|
|
42
|
-
onstatechange: null,
|
|
43
|
-
get currentTime() {
|
|
44
|
-
return audioRef.current ? audioRef.current.currentTime : 0;
|
|
45
|
-
}
|
|
46
|
-
};
|
|
47
|
-
const handlePause = () => {
|
|
48
|
-
wrapper.state = 'suspended';
|
|
49
|
-
if (wrapper.onstatechange) {
|
|
50
|
-
wrapper.onstatechange.call(null, new Event('statechange'));
|
|
51
|
-
}
|
|
52
|
-
};
|
|
53
|
-
const handlePlay = () => {
|
|
54
|
-
wrapper.state = 'running';
|
|
55
|
-
if (wrapper.onstatechange) {
|
|
56
|
-
wrapper.onstatechange.call(null, new Event('statechange'));
|
|
57
|
-
}
|
|
58
|
-
};
|
|
59
|
-
const handleEnded = () => {
|
|
60
|
-
wrapper.state = 'closed';
|
|
61
|
-
if (wrapper.onstatechange) {
|
|
62
|
-
wrapper.onstatechange.call(null, new Event('statechange'));
|
|
63
|
-
}
|
|
64
|
-
};
|
|
65
|
-
audioRef.current.addEventListener('pause', handlePause);
|
|
66
|
-
audioRef.current.addEventListener('play', handlePlay);
|
|
67
|
-
audioRef.current.addEventListener('ended', handleEnded);
|
|
68
|
-
const cleanupEventListeners = () => {
|
|
69
|
-
if (audioRef.current) {
|
|
70
|
-
audioRef.current.removeEventListener('pause', handlePause);
|
|
71
|
-
audioRef.current.removeEventListener('play', handlePlay);
|
|
72
|
-
audioRef.current.removeEventListener('ended', handleEnded);
|
|
73
|
-
}
|
|
74
|
-
};
|
|
75
|
-
wrapper.cleanup = cleanupEventListeners;
|
|
76
|
-
console.log('[useTTS] Created audio wrapper for viseme processing');
|
|
77
|
-
return wrapper;
|
|
78
|
-
}, []);
|
|
79
|
-
const cleanup = (0, react_1.useCallback)(() => {
|
|
80
|
-
var _a;
|
|
81
|
-
console.log('[useTTS] Cleaning up audio and viseme resources');
|
|
82
|
-
if (audioWrapperRef.current && audioWrapperRef.current.cleanup) {
|
|
83
|
-
audioWrapperRef.current.cleanup();
|
|
84
|
-
console.log('[useTTS] Cleaned up audio wrapper event listeners');
|
|
85
|
-
}
|
|
86
|
-
audioWrapperRef.current = null;
|
|
87
|
-
stopProcessing();
|
|
88
|
-
console.log('[useTTS] Stopped viseme processing');
|
|
89
|
-
if ((_a = audioRef.current) === null || _a === void 0 ? void 0 : _a.src) {
|
|
90
|
-
URL.revokeObjectURL(audioRef.current.src);
|
|
91
|
-
console.log('[useTTS] Revoked audio object URL');
|
|
92
|
-
audioRef.current = null;
|
|
93
|
-
}
|
|
94
|
-
visemeLoadedRef.current = false;
|
|
95
|
-
}, [stopProcessing]);
|
|
96
|
-
const stop = (0, react_1.useCallback)(() => {
|
|
97
|
-
console.log('[useTTS] Stopping audio playback');
|
|
98
|
-
if (audioRef.current) {
|
|
99
|
-
audioRef.current.pause();
|
|
100
|
-
audioRef.current.currentTime = 0;
|
|
101
|
-
}
|
|
102
|
-
setIsPlaying(false);
|
|
103
|
-
cleanup();
|
|
104
|
-
}, [cleanup]);
|
|
105
|
-
const emitEndSpeakEvent = (0, react_1.useCallback)(() => {
|
|
106
|
-
console.log('[useTTS] Emitting end speak event');
|
|
107
|
-
const e = new CustomEvent('MemoriEndSpeak');
|
|
108
|
-
document.dispatchEvent(e);
|
|
109
|
-
if (options.continuousSpeech && options.onEndSpeakStartListen) {
|
|
110
|
-
console.log('[useTTS] Starting continuous speech listening');
|
|
111
|
-
options.onEndSpeakStartListen();
|
|
112
|
-
}
|
|
113
|
-
}, [options.continuousSpeech, options.onEndSpeakStartListen]);
|
|
114
|
-
const speak = (0, react_1.useCallback)(async (text) => {
|
|
115
|
-
console.log('[useTTS] Starting speech synthesis for text:', text);
|
|
116
|
-
if (!text || options.preview || speakerMuted) {
|
|
117
|
-
console.log('[useTTS] Speech cancelled - empty text, preview mode, or muted');
|
|
118
|
-
emitEndSpeakEvent();
|
|
119
|
-
return;
|
|
120
|
-
}
|
|
121
|
-
if (!hasUserActivatedSpeak) {
|
|
122
|
-
console.log('[useTTS] First user activation of speak');
|
|
123
|
-
setHasUserActivatedSpeak(true);
|
|
124
|
-
}
|
|
125
|
-
try {
|
|
126
|
-
stop();
|
|
127
|
-
setIsPlaying(true);
|
|
128
|
-
setError(null);
|
|
129
|
-
const processedText = (0, sanitizer_1.sanitizeText)(text);
|
|
130
|
-
console.log('[useTTS] Processed text:', processedText);
|
|
131
|
-
console.log('[useTTS] Making API request to:', 'http://localhost:3000/api/tts', config.voice);
|
|
132
|
-
const response = await fetch('http://localhost:3000/api/tts', {
|
|
133
|
-
method: 'POST',
|
|
134
|
-
headers: {
|
|
135
|
-
'Content-Type': 'application/json',
|
|
136
|
-
},
|
|
137
|
-
body: JSON.stringify({
|
|
138
|
-
text: processedText,
|
|
139
|
-
tenant: config.tenant || 'www.aisuru.com',
|
|
140
|
-
voice: config.voice,
|
|
141
|
-
model: config.model || 'tts-1',
|
|
142
|
-
region: config.region,
|
|
143
|
-
provider: config.provider,
|
|
144
|
-
includeVisemes: true,
|
|
145
|
-
}),
|
|
146
|
-
});
|
|
147
|
-
if (!response.ok) {
|
|
148
|
-
const errorData = await response.json().catch(() => ({}));
|
|
149
|
-
throw new Error(errorData.error || `API error: ${response.status}`);
|
|
150
|
-
}
|
|
151
|
-
console.log('[useTTS] Checking for viseme data in response headers');
|
|
152
|
-
const visemeDataHeader = response.headers.get('X-Viseme-Data');
|
|
153
|
-
console.log('[useTTS] Viseme data header present:', visemeDataHeader ? 'Yes' : 'No');
|
|
154
|
-
let hasVisemeData = false;
|
|
155
|
-
if (visemeDataHeader) {
|
|
156
|
-
console.log('[useTTS] Found viseme data header, attempting to parse');
|
|
157
|
-
try {
|
|
158
|
-
const visemeData = JSON.parse(visemeDataHeader);
|
|
159
|
-
console.log('[useTTS] Successfully parsed viseme data, entries:', visemeData.length);
|
|
160
|
-
hasVisemeData = loadVisemeData(visemeData);
|
|
161
|
-
console.log('[useTTS] Loaded viseme data into queue:', hasVisemeData);
|
|
162
|
-
}
|
|
163
|
-
catch (err) {
|
|
164
|
-
console.error('[useTTS] Failed to parse viseme data:', err);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
else {
|
|
168
|
-
console.log('[useTTS] No viseme data found in response headers');
|
|
169
|
-
}
|
|
170
|
-
console.log('[useTTS] Getting audio blob from response');
|
|
171
|
-
const audioBlob = await response.blob();
|
|
172
|
-
console.log('[useTTS] Received audio blob of size:', audioBlob.size);
|
|
173
|
-
const audioUrl = URL.createObjectURL(audioBlob);
|
|
174
|
-
console.log('[useTTS] Created audio URL:', audioUrl);
|
|
175
|
-
console.log('[useTTS] Creating new Audio element');
|
|
176
|
-
audioRef.current = new Audio(audioUrl);
|
|
177
|
-
console.log('[useTTS] Configuring audio event handlers');
|
|
178
|
-
if (hasVisemeData) {
|
|
179
|
-
audioWrapperRef.current = createAudioWrapper();
|
|
180
|
-
}
|
|
181
|
-
audioRef.current.oncanplaythrough = async () => {
|
|
182
|
-
var _a;
|
|
183
|
-
console.log('[useTTS] Audio can play through, ready to start playback');
|
|
184
|
-
try {
|
|
185
|
-
if (hasVisemeData && audioWrapperRef.current) {
|
|
186
|
-
console.log('[useTTS] Starting viseme processing before audio playback');
|
|
187
|
-
startProcessing(audioWrapperRef.current);
|
|
188
|
-
console.log('[useTTS] Viseme processing started successfully');
|
|
189
|
-
}
|
|
190
|
-
console.log('[useTTS] Starting audio playback');
|
|
191
|
-
await ((_a = audioRef.current) === null || _a === void 0 ? void 0 : _a.play());
|
|
192
|
-
console.log('[useTTS] Audio playback started successfully');
|
|
193
|
-
if (audioRef.current) {
|
|
194
|
-
audioRef.current.oncanplaythrough = null;
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
catch (e) {
|
|
198
|
-
console.error('[useTTS] Error in canplaythrough handler:', e);
|
|
199
|
-
cleanup();
|
|
200
|
-
emitEndSpeakEvent();
|
|
201
|
-
}
|
|
202
|
-
};
|
|
203
|
-
audioRef.current.onended = () => {
|
|
204
|
-
console.log('[useTTS] Audio playback ended normally');
|
|
205
|
-
setIsPlaying(false);
|
|
206
|
-
cleanup();
|
|
207
|
-
emitEndSpeakEvent();
|
|
208
|
-
};
|
|
209
|
-
audioRef.current.onerror = e => {
|
|
210
|
-
console.error('[useTTS] Audio playback error:', e);
|
|
211
|
-
setIsPlaying(false);
|
|
212
|
-
cleanup();
|
|
213
|
-
const errorMsg = new Error(`Audio error: ${e}`);
|
|
214
|
-
setError(errorMsg);
|
|
215
|
-
emitEndSpeakEvent();
|
|
216
|
-
};
|
|
217
|
-
console.log('[useTTS] Beginning audio load');
|
|
218
|
-
audioRef.current.load();
|
|
219
|
-
}
|
|
220
|
-
catch (err) {
|
|
221
|
-
console.error('[useTTS] Error during speech synthesis:', err);
|
|
222
|
-
setIsPlaying(false);
|
|
223
|
-
cleanup();
|
|
224
|
-
const errorMsg = err instanceof Error ? err : new Error(String(err));
|
|
225
|
-
setError(errorMsg);
|
|
226
|
-
try {
|
|
227
|
-
if ('speechSynthesis' in window) {
|
|
228
|
-
console.log('[useTTS] Attempting browser fallback synthesis');
|
|
229
|
-
const utterance = new SpeechSynthesisUtterance((0, sanitizer_1.sanitizeText)(text));
|
|
230
|
-
window.speechSynthesis.speak(utterance);
|
|
231
|
-
}
|
|
232
|
-
}
|
|
233
|
-
catch (fallbackErr) {
|
|
234
|
-
console.error('[useTTS] Browser fallback synthesis error:', fallbackErr);
|
|
235
|
-
}
|
|
236
|
-
emitEndSpeakEvent();
|
|
237
|
-
}
|
|
238
|
-
}, [
|
|
239
|
-
config,
|
|
240
|
-
speakerMuted,
|
|
241
|
-
options.preview,
|
|
242
|
-
hasUserActivatedSpeak,
|
|
243
|
-
stop,
|
|
244
|
-
cleanup,
|
|
245
|
-
loadVisemeData,
|
|
246
|
-
createAudioWrapper,
|
|
247
|
-
startProcessing,
|
|
248
|
-
emitEndSpeakEvent,
|
|
249
|
-
]);
|
|
250
|
-
const toggleMute = (0, react_1.useCallback)((mute) => {
|
|
251
|
-
const newMuteState = mute !== undefined ? mute : !speakerMuted;
|
|
252
|
-
console.log('[useTTS] Toggling mute state to:', newMuteState);
|
|
253
|
-
setSpeakerMuted(newMuteState);
|
|
254
|
-
if (newMuteState && isPlaying) {
|
|
255
|
-
stop();
|
|
256
|
-
}
|
|
257
|
-
}, [speakerMuted, isPlaying, stop]);
|
|
258
|
-
(0, react_1.useEffect)(() => {
|
|
259
|
-
console.log('[useTTS] Updating global memoriSpeaking state:', isPlaying);
|
|
260
|
-
if (typeof window !== 'undefined') {
|
|
261
|
-
window.memoriSpeaking = isPlaying;
|
|
262
|
-
}
|
|
263
|
-
}, [isPlaying]);
|
|
264
|
-
(0, react_1.useEffect)(() => {
|
|
265
|
-
if (typeof window !== 'undefined') {
|
|
266
|
-
console.log('[useTTS] Setting up global speak function');
|
|
267
|
-
globalSpeakRef.current = window.speak;
|
|
268
|
-
window.speak = speak;
|
|
269
|
-
return () => {
|
|
270
|
-
console.log('[useTTS] Cleaning up global speak function');
|
|
271
|
-
window.speak = globalSpeakRef.current;
|
|
272
|
-
};
|
|
273
|
-
}
|
|
274
|
-
}, [speak]);
|
|
275
|
-
(0, react_1.useEffect)(() => {
|
|
276
|
-
return () => {
|
|
277
|
-
console.log('[useTTS] Component unmounting, cleaning up');
|
|
278
|
-
stop();
|
|
279
|
-
};
|
|
280
|
-
}, [stop]);
|
|
281
|
-
return {
|
|
282
|
-
speak,
|
|
283
|
-
stop,
|
|
284
|
-
isPlaying,
|
|
285
|
-
speakerMuted,
|
|
286
|
-
toggleMute,
|
|
287
|
-
hasUserActivatedSpeak,
|
|
288
|
-
setHasUserActivatedSpeak,
|
|
289
|
-
error,
|
|
290
|
-
setError,
|
|
291
|
-
};
|
|
292
|
-
}
|
|
293
|
-
exports.useTTS = useTTS;
|
|
294
|
-
//# sourceMappingURL=useTTS.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"useTTS.js","sourceRoot":"","sources":["../../../src/helpers/tts/useTTS.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export declare function stripMarkdown(text: string): string;
|
|
2
|
-
export declare function stripEmojis(text: string): string;
|
|
3
|
-
export declare function stripHTML(text: string): string;
|
|
4
|
-
export declare function stripOutputTags(text: string): string;
|
|
5
|
-
export declare function escapeHTML(text: string): string;
|
|
6
|
-
export declare function sanitizeText(text: string): string;
|
package/esm/helpers/sanitizer.js
DELETED
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
export function stripMarkdown(text) {
|
|
2
|
-
return text
|
|
3
|
-
.replace(/\*\*(.*?)\*\*/g, '$1')
|
|
4
|
-
.replace(/\*(.*?)\*/g, '$1')
|
|
5
|
-
.replace(/__(.*?)__/g, '$1')
|
|
6
|
-
.replace(/_(.*?)_/g, '$1')
|
|
7
|
-
.replace(/~~(.*?)~~/g, '$1')
|
|
8
|
-
.replace(/```(.*?)```/gs, '$1')
|
|
9
|
-
.replace(/`(.*?)`/g, '$1')
|
|
10
|
-
.replace(/\[(.*?)\]\((.*?)\)/g, '$1');
|
|
11
|
-
}
|
|
12
|
-
export function stripEmojis(text) {
|
|
13
|
-
return text.replace(/[\u{1F600}-\u{1F64F}|\u{1F300}-\u{1F5FF}|\u{1F680}-\u{1F6FF}|\u{2600}-\u{26FF}|\u{2700}-\u{27BF}]/gu, '');
|
|
14
|
-
}
|
|
15
|
-
export function stripHTML(text) {
|
|
16
|
-
return text.replace(/<[^>]*>/g, '');
|
|
17
|
-
}
|
|
18
|
-
export function stripOutputTags(text) {
|
|
19
|
-
return text;
|
|
20
|
-
}
|
|
21
|
-
export function escapeHTML(text) {
|
|
22
|
-
return text
|
|
23
|
-
.replace(/&/g, '&')
|
|
24
|
-
.replace(/</g, '<')
|
|
25
|
-
.replace(/>/g, '>')
|
|
26
|
-
.replace(/"/g, '"')
|
|
27
|
-
.replace(/'/g, ''');
|
|
28
|
-
}
|
|
29
|
-
export function sanitizeText(text) {
|
|
30
|
-
return escapeHTML(stripMarkdown(stripEmojis(stripHTML(stripOutputTags(text)))));
|
|
31
|
-
}
|
|
32
|
-
//# sourceMappingURL=sanitizer.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"sanitizer.js","sourceRoot":"","sources":["../../src/helpers/sanitizer.ts"],"names":[],"mappings":"AAMA,MAAM,UAAU,aAAa,CAAC,IAAY;IACtC,OAAO,IAAI;SACR,OAAO,CAAC,gBAAgB,EAAE,IAAI,CAAC;SAC/B,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;SAC3B,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC;SACzB,OAAO,CAAC,YAAY,EAAE,IAAI,CAAC;SAC3B,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC;SAC9B,OAAO,CAAC,UAAU,EAAE,IAAI,CAAC;SACzB,OAAO,CAAC,qBAAqB,EAAE,IAAI,CAAC,CAAC;AAC1C,CAAC;AAMD,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,OAAO,IAAI,CAAC,OAAO,CAAC,qGAAqG,EAAE,EAAE,CAAC,CAAC;AACjI,CAAC;AAMD,MAAM,UAAU,SAAS,CAAC,IAAY;IACpC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;AACtC,CAAC;AAMD,MAAM,UAAU,eAAe,CAAC,IAAY;IAE1C,OAAO,IAAI,CAAC;AACd,CAAC;AAMD,MAAM,UAAU,UAAU,CAAC,IAAY;IACrC,OAAO,IAAI;SACR,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC;SACtB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,MAAM,CAAC;SACrB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC;SACvB,OAAO,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;AAC7B,CAAC;AAMD,MAAM,UAAU,YAAY,CAAC,IAAY;IACvC,OAAO,UAAU,CACf,aAAa,CACX,WAAW,CACT,SAAS,CACP,eAAe,CAAC,IAAI,CAAC,CACtB,CACF,CACF,CACF,CAAC;AACJ,CAAC"}
|
|
@@ -1,158 +0,0 @@
|
|
|
1
|
-
import { TTSConfig } from './useTTS';
|
|
2
|
-
export declare const AZURE_VOICES: {
|
|
3
|
-
IT: {
|
|
4
|
-
MALE: string;
|
|
5
|
-
FEMALE: string;
|
|
6
|
-
};
|
|
7
|
-
DE: {
|
|
8
|
-
MALE: string;
|
|
9
|
-
FEMALE: string;
|
|
10
|
-
};
|
|
11
|
-
EN: {
|
|
12
|
-
MALE: string;
|
|
13
|
-
FEMALE: string;
|
|
14
|
-
};
|
|
15
|
-
ES: {
|
|
16
|
-
MALE: string;
|
|
17
|
-
FEMALE: string;
|
|
18
|
-
};
|
|
19
|
-
FR: {
|
|
20
|
-
MALE: string;
|
|
21
|
-
FEMALE: string;
|
|
22
|
-
};
|
|
23
|
-
PT: {
|
|
24
|
-
MALE: string;
|
|
25
|
-
FEMALE: string;
|
|
26
|
-
};
|
|
27
|
-
UK: {
|
|
28
|
-
MALE: string;
|
|
29
|
-
FEMALE: string;
|
|
30
|
-
};
|
|
31
|
-
RU: {
|
|
32
|
-
MALE: string;
|
|
33
|
-
FEMALE: string;
|
|
34
|
-
};
|
|
35
|
-
PL: {
|
|
36
|
-
MALE: string;
|
|
37
|
-
FEMALE: string;
|
|
38
|
-
};
|
|
39
|
-
FI: {
|
|
40
|
-
MALE: string;
|
|
41
|
-
FEMALE: string;
|
|
42
|
-
};
|
|
43
|
-
EL: {
|
|
44
|
-
MALE: string;
|
|
45
|
-
FEMALE: string;
|
|
46
|
-
};
|
|
47
|
-
AR: {
|
|
48
|
-
MALE: string;
|
|
49
|
-
FEMALE: string;
|
|
50
|
-
};
|
|
51
|
-
ZH: {
|
|
52
|
-
MALE: string;
|
|
53
|
-
FEMALE: string;
|
|
54
|
-
};
|
|
55
|
-
JA: {
|
|
56
|
-
MALE: string;
|
|
57
|
-
FEMALE: string;
|
|
58
|
-
};
|
|
59
|
-
};
|
|
60
|
-
export declare const DEFAULT_AZURE_VOICE: {
|
|
61
|
-
MALE: string;
|
|
62
|
-
FEMALE: string;
|
|
63
|
-
};
|
|
64
|
-
export declare const OPENAI_VOICES: {
|
|
65
|
-
ALL: string[];
|
|
66
|
-
CHARACTERISTICS: {
|
|
67
|
-
alloy: {
|
|
68
|
-
gender: string;
|
|
69
|
-
tone: string;
|
|
70
|
-
};
|
|
71
|
-
echo: {
|
|
72
|
-
gender: string;
|
|
73
|
-
tone: string;
|
|
74
|
-
};
|
|
75
|
-
fable: {
|
|
76
|
-
gender: string;
|
|
77
|
-
tone: string;
|
|
78
|
-
};
|
|
79
|
-
onyx: {
|
|
80
|
-
gender: string;
|
|
81
|
-
tone: string;
|
|
82
|
-
};
|
|
83
|
-
nova: {
|
|
84
|
-
gender: string;
|
|
85
|
-
tone: string;
|
|
86
|
-
};
|
|
87
|
-
shimmer: {
|
|
88
|
-
gender: string;
|
|
89
|
-
tone: string;
|
|
90
|
-
};
|
|
91
|
-
};
|
|
92
|
-
RECOMMENDED: {
|
|
93
|
-
DEFAULT: {
|
|
94
|
-
MALE: string;
|
|
95
|
-
FEMALE: string;
|
|
96
|
-
NEUTRAL: string;
|
|
97
|
-
};
|
|
98
|
-
IT: {
|
|
99
|
-
MALE: string;
|
|
100
|
-
FEMALE: string;
|
|
101
|
-
};
|
|
102
|
-
ES: {
|
|
103
|
-
MALE: string;
|
|
104
|
-
FEMALE: string;
|
|
105
|
-
};
|
|
106
|
-
FR: {
|
|
107
|
-
MALE: string;
|
|
108
|
-
FEMALE: string;
|
|
109
|
-
};
|
|
110
|
-
PT: {
|
|
111
|
-
MALE: string;
|
|
112
|
-
FEMALE: string;
|
|
113
|
-
};
|
|
114
|
-
DE: {
|
|
115
|
-
MALE: string;
|
|
116
|
-
FEMALE: string;
|
|
117
|
-
};
|
|
118
|
-
EN: {
|
|
119
|
-
MALE: string;
|
|
120
|
-
FEMALE: string;
|
|
121
|
-
};
|
|
122
|
-
ZH: {
|
|
123
|
-
MALE: string;
|
|
124
|
-
FEMALE: string;
|
|
125
|
-
};
|
|
126
|
-
JA: {
|
|
127
|
-
MALE: string;
|
|
128
|
-
FEMALE: string;
|
|
129
|
-
};
|
|
130
|
-
RU: {
|
|
131
|
-
MALE: string;
|
|
132
|
-
FEMALE: string;
|
|
133
|
-
};
|
|
134
|
-
};
|
|
135
|
-
};
|
|
136
|
-
export declare const DEFAULT_OPENAI_VOICE = "alloy";
|
|
137
|
-
export declare const PROVIDER_CONFIG: {
|
|
138
|
-
azure: {
|
|
139
|
-
defaultVoice: string;
|
|
140
|
-
defaultRegion: string;
|
|
141
|
-
defaultModel: null;
|
|
142
|
-
endpoint: (region: string) => string;
|
|
143
|
-
outputFormat: string;
|
|
144
|
-
};
|
|
145
|
-
openai: {
|
|
146
|
-
defaultVoice: string;
|
|
147
|
-
defaultModel: string;
|
|
148
|
-
voices: string[];
|
|
149
|
-
endpoint: string;
|
|
150
|
-
};
|
|
151
|
-
};
|
|
152
|
-
export declare function getTTSVoice(lang?: string, provider?: 'azure' | 'openai', voiceType?: 'MALE' | 'FEMALE' | 'NEUTRAL'): string;
|
|
153
|
-
export declare function isValidVoice(voice: string, provider: 'azure' | 'openai'): boolean;
|
|
154
|
-
export declare function getDefaultVoice(provider: 'azure' | 'openai', voiceType?: 'MALE' | 'FEMALE'): string;
|
|
155
|
-
export declare function getDefaultRegion(provider: 'azure' | 'openai'): string | null;
|
|
156
|
-
export declare function getDefaultModel(provider: 'azure' | 'openai'): string | null;
|
|
157
|
-
export declare function ensureValidVoice(voice: string, provider: 'azure' | 'openai', voiceType?: 'MALE' | 'FEMALE'): string;
|
|
158
|
-
export declare function createTTSConfiguration(config: Partial<TTSConfig>): TTSConfig;
|