react-native-srschat 0.1.62 → 0.1.63
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/lib/commonjs/components/input.js +3 -2
- package/lib/commonjs/components/input.js.map +1 -1
- package/lib/commonjs/components/voice.js +3 -2
- package/lib/commonjs/components/voice.js.map +1 -1
- package/lib/commonjs/components/welcomeInput.js +3 -2
- package/lib/commonjs/components/welcomeInput.js.map +1 -1
- package/lib/commonjs/contexts/AppContext.js +4 -1
- package/lib/commonjs/contexts/AppContext.js.map +1 -1
- package/lib/commonjs/utils/audioRecorder.js +168 -164
- package/lib/commonjs/utils/audioRecorder.js.map +1 -1
- package/lib/module/components/input.js +3 -2
- package/lib/module/components/input.js.map +1 -1
- package/lib/module/components/voice.js +3 -2
- package/lib/module/components/voice.js.map +1 -1
- package/lib/module/components/welcomeInput.js +3 -2
- package/lib/module/components/welcomeInput.js.map +1 -1
- package/lib/module/contexts/AppContext.js +4 -1
- package/lib/module/contexts/AppContext.js.map +1 -1
- package/lib/module/utils/audioRecorder.js +168 -164
- package/lib/module/utils/audioRecorder.js.map +1 -1
- package/lib/typescript/components/voice.d.ts.map +1 -1
- package/lib/typescript/contexts/AppContext.d.ts.map +1 -1
- package/lib/typescript/utils/audioRecorder.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/components/input.js +2 -2
- package/src/components/voice.js +1 -2
- package/src/components/welcomeInput.js +2 -2
- package/src/contexts/AppContext.js +2 -1
- package/src/utils/audioRecorder.js +184 -167
|
@@ -20,15 +20,9 @@ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e
|
|
|
20
20
|
let resultCallback = null;
|
|
21
21
|
let partialResultCallback = null;
|
|
22
22
|
let silenceTimer = null;
|
|
23
|
+
let isCurrentlyRecording = false;
|
|
23
24
|
let finalResult = '';
|
|
24
|
-
const SILENCE_DURATION = 1500;
|
|
25
|
-
const State = {
|
|
26
|
-
IDLE: 'IDLE',
|
|
27
|
-
LISTENING: 'LISTENING',
|
|
28
|
-
FINALIZING: 'FINALIZING'
|
|
29
|
-
};
|
|
30
|
-
let state = State.IDLE;
|
|
31
|
-
let listenersBound = false;
|
|
25
|
+
const SILENCE_DURATION = 1500; // 1.5 seconds of silence before stopping
|
|
32
26
|
|
|
33
27
|
// Add this constant for AsyncStorage key
|
|
34
28
|
const PERMISSION_STORAGE_KEY = '@voice_permission_status';
|
|
@@ -48,7 +42,6 @@ async function initVoice(onResult, onPartialResult = null) {
|
|
|
48
42
|
resultCallback = onResult;
|
|
49
43
|
partialResultCallback = onPartialResult; // Store partial callback
|
|
50
44
|
finalResult = '';
|
|
51
|
-
if (listenersBound) return true;
|
|
52
45
|
|
|
53
46
|
// Check if Voice module is available
|
|
54
47
|
if (!_voice.default) {
|
|
@@ -62,103 +55,86 @@ async function initVoice(onResult, onPartialResult = null) {
|
|
|
62
55
|
console.error('Speech recognition is not available on this device');
|
|
63
56
|
return false;
|
|
64
57
|
}
|
|
58
|
+
|
|
59
|
+
// Remove any existing listeners
|
|
65
60
|
_voice.default.removeAllListeners();
|
|
66
61
|
|
|
67
62
|
// Set up all event listeners
|
|
68
|
-
_voice.default.onSpeechStart =
|
|
69
|
-
console.log('
|
|
70
|
-
|
|
63
|
+
_voice.default.onSpeechStart = e => {
|
|
64
|
+
console.log('onSpeechStart: ', e);
|
|
65
|
+
isCurrentlyRecording = true;
|
|
71
66
|
finalResult = '';
|
|
72
|
-
|
|
67
|
+
if (silenceTimer) {
|
|
68
|
+
clearTimeout(silenceTimer);
|
|
69
|
+
silenceTimer = null;
|
|
70
|
+
}
|
|
73
71
|
};
|
|
72
|
+
_voice.default.onSpeechRecognized = e => {
|
|
73
|
+
console.log('onSpeechRecognized: ', e);
|
|
74
|
+
if (e.isFinal) {
|
|
75
|
+
console.log('Speech recognition final');
|
|
76
|
+
handleFinalResult();
|
|
77
|
+
}
|
|
78
|
+
};
|
|
79
|
+
_voice.default.onSpeechEnd = async e => {
|
|
80
|
+
console.log('onSpeechEnd: ', e);
|
|
81
|
+
if (silenceTimer) {
|
|
82
|
+
clearTimeout(silenceTimer);
|
|
83
|
+
silenceTimer = null;
|
|
84
|
+
}
|
|
74
85
|
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
console.log('[onSpeechEnd] Speech ended, current state:', state);
|
|
79
|
-
clearSilenceTimer();
|
|
80
|
-
// Always reset to IDLE when speech ends (sessions should be considered over)
|
|
81
|
-
console.log('[onSpeechEnd] Scheduling IDLE reset');
|
|
82
|
-
if (_reactNative.Platform.OS === 'android') {
|
|
83
|
-
setTimeout(() => {
|
|
84
|
-
console.log('[onSpeechEnd] Android timeout - setting state to IDLE');
|
|
85
|
-
state = State.IDLE;
|
|
86
|
-
}, 800); // Increased delay
|
|
87
|
-
} else {
|
|
88
|
-
console.log('[onSpeechEnd] iOS - setting state to IDLE immediately');
|
|
89
|
-
state = State.IDLE;
|
|
86
|
+
// Only handle final result if we're still recording
|
|
87
|
+
if (isCurrentlyRecording) {
|
|
88
|
+
await handleFinalResult();
|
|
90
89
|
}
|
|
91
90
|
};
|
|
92
|
-
_voice.default.onSpeechError = e => {
|
|
91
|
+
_voice.default.onSpeechError = async e => {
|
|
93
92
|
var _e$error, _e$error2;
|
|
94
|
-
console.log('
|
|
95
|
-
|
|
93
|
+
console.log('onSpeechError: ', e);
|
|
94
|
+
if (silenceTimer) {
|
|
95
|
+
clearTimeout(silenceTimer);
|
|
96
|
+
silenceTimer = null;
|
|
97
|
+
}
|
|
96
98
|
const code = (_e$error = e.error) === null || _e$error === void 0 || (_e$error = _e$error.code) === null || _e$error === void 0 ? void 0 : _e$error.toString();
|
|
97
99
|
const msg = ((_e$error2 = e.error) === null || _e$error2 === void 0 ? void 0 : _e$error2.message) || '';
|
|
98
100
|
|
|
99
|
-
// Handle
|
|
101
|
+
// Handle Android-specific errors
|
|
100
102
|
if (_reactNative.Platform.OS === 'android' && (code === '7' || code === '5')) {
|
|
101
|
-
if (finalResult && resultCallback)
|
|
103
|
+
if (finalResult && resultCallback) {
|
|
104
|
+
resultCallback(finalResult, null);
|
|
105
|
+
}
|
|
102
106
|
} else if (!msg.includes('No speech detected') && resultCallback) {
|
|
103
107
|
resultCallback(null, msg);
|
|
104
|
-
} else if (resultCallback) {
|
|
105
|
-
resultCallback(null, null);
|
|
106
|
-
}
|
|
107
|
-
|
|
108
|
-
// Errors end the session immediately, reset to IDLE with delay
|
|
109
|
-
console.log('[onSpeechError] Scheduling IDLE reset');
|
|
110
|
-
if (_reactNative.Platform.OS === 'android') {
|
|
111
|
-
setTimeout(() => {
|
|
112
|
-
console.log('[onSpeechError] Android timeout - setting state to IDLE');
|
|
113
|
-
state = State.IDLE;
|
|
114
|
-
}, 800); // Increased delay to match onSpeechEnd
|
|
115
|
-
} else {
|
|
116
|
-
console.log('[onSpeechError] iOS - setting state to IDLE immediately');
|
|
117
|
-
state = State.IDLE;
|
|
118
108
|
}
|
|
109
|
+
await cleanupVoiceSession();
|
|
119
110
|
};
|
|
120
111
|
_voice.default.onSpeechResults = e => {
|
|
121
|
-
console.log('
|
|
122
|
-
clearSilenceTimer();
|
|
112
|
+
console.log('onSpeechResults: ', e);
|
|
123
113
|
if (e.value && e.value.length > 0) {
|
|
124
114
|
finalResult = e.value[0];
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
// Only call callback if we haven't already (avoid double-calling)
|
|
128
|
-
if (state === State.LISTENING && resultCallback) {
|
|
129
|
-
console.log('[onSpeechResults] Calling callback with results');
|
|
130
|
-
resultCallback(finalResult, null);
|
|
131
|
-
} else {
|
|
132
|
-
console.log('[onSpeechResults] Not calling callback - state:', state);
|
|
133
|
-
}
|
|
134
|
-
|
|
135
|
-
// On Android, we must explicitly stop to avoid session corruption
|
|
136
|
-
if (_reactNative.Platform.OS === 'android') {
|
|
137
|
-
console.log('[onSpeechResults] Android: Explicitly calling stopRecording()');
|
|
138
|
-
stopRecording();
|
|
139
|
-
}
|
|
140
|
-
|
|
141
|
-
// Results end the session, reset to IDLE with delay
|
|
142
|
-
console.log('[onSpeechResults] Scheduling IDLE reset');
|
|
143
|
-
if (_reactNative.Platform.OS === 'android') {
|
|
144
|
-
setTimeout(() => {
|
|
145
|
-
console.log('[onSpeechResults] Android timeout - setting state to IDLE');
|
|
146
|
-
state = State.IDLE;
|
|
147
|
-
}, 800); // Increased delay
|
|
148
|
-
} else {
|
|
149
|
-
console.log('[onSpeechResults] iOS - setting state to IDLE immediately');
|
|
150
|
-
state = State.IDLE;
|
|
115
|
+
handleSilenceDetection();
|
|
151
116
|
}
|
|
152
117
|
};
|
|
153
118
|
_voice.default.onSpeechPartialResults = e => {
|
|
119
|
+
console.log('onSpeechPartialResults: ', e);
|
|
120
|
+
if (silenceTimer) {
|
|
121
|
+
clearTimeout(silenceTimer);
|
|
122
|
+
}
|
|
154
123
|
if (e.value && e.value.length > 0) {
|
|
155
124
|
finalResult = e.value[0];
|
|
156
|
-
|
|
125
|
+
|
|
126
|
+
// Call partial callback for live transcription
|
|
127
|
+
if (partialResultCallback) {
|
|
128
|
+
partialResultCallback(finalResult);
|
|
129
|
+
}
|
|
157
130
|
handleSilenceDetection();
|
|
158
131
|
}
|
|
159
132
|
};
|
|
160
|
-
if (_reactNative.Platform.OS === 'android')
|
|
161
|
-
|
|
133
|
+
if (_reactNative.Platform.OS === 'android') {
|
|
134
|
+
_voice.default.onSpeechVolumeChanged = e => {
|
|
135
|
+
console.log('onSpeechVolumeChanged: ', e);
|
|
136
|
+
};
|
|
137
|
+
}
|
|
162
138
|
return true;
|
|
163
139
|
} catch (error) {
|
|
164
140
|
console.error('Error initializing Voice:', error);
|
|
@@ -170,144 +146,159 @@ const handleSilenceDetection = () => {
|
|
|
170
146
|
clearTimeout(silenceTimer);
|
|
171
147
|
}
|
|
172
148
|
silenceTimer = setTimeout(async () => {
|
|
173
|
-
if (
|
|
149
|
+
if (isCurrentlyRecording) {
|
|
174
150
|
await handleFinalResult();
|
|
175
151
|
}
|
|
176
152
|
}, SILENCE_DURATION);
|
|
177
153
|
};
|
|
178
154
|
const handleFinalResult = async () => {
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
console.log('[handleFinalResult] State not LISTENING, returning');
|
|
182
|
-
return;
|
|
183
|
-
}
|
|
184
|
-
|
|
185
|
-
// Set to FINALIZING first to prevent double callbacks
|
|
186
|
-
console.log('[handleFinalResult] Setting state to FINALIZING');
|
|
187
|
-
state = State.FINALIZING;
|
|
188
|
-
|
|
189
|
-
// Call the callback with results
|
|
155
|
+
if (!isCurrentlyRecording) return;
|
|
156
|
+
console.log('handleFinalResult called with:', finalResult);
|
|
190
157
|
if (finalResult && resultCallback) {
|
|
191
|
-
console.log('[handleFinalResult] Calling callback with result:', finalResult);
|
|
192
158
|
resultCallback(finalResult, null);
|
|
193
159
|
}
|
|
194
160
|
|
|
195
|
-
//
|
|
196
|
-
console.log('[handleFinalResult] Calling stopRecording');
|
|
161
|
+
// Stop recording first
|
|
197
162
|
await stopRecording();
|
|
198
163
|
};
|
|
199
|
-
const cleanupVoiceSession = () => {
|
|
200
|
-
console.log('
|
|
201
|
-
|
|
202
|
-
clearSilenceTimer();
|
|
203
|
-
|
|
204
|
-
// Add delay before allowing next session on Android
|
|
205
|
-
if (_reactNative.Platform.OS === 'android') {
|
|
206
|
-
setTimeout(() => {
|
|
207
|
-
console.log('[cleanupVoiceSession] Android timeout - setting state to IDLE');
|
|
208
|
-
state = State.IDLE;
|
|
209
|
-
}, 800);
|
|
210
|
-
} else {
|
|
211
|
-
console.log('[cleanupVoiceSession] iOS - setting state to IDLE immediately');
|
|
212
|
-
state = State.IDLE;
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
const clearSilenceTimer = () => {
|
|
164
|
+
const cleanupVoiceSession = async () => {
|
|
165
|
+
console.log('cleanupVoiceSession called');
|
|
166
|
+
isCurrentlyRecording = false;
|
|
216
167
|
if (silenceTimer) {
|
|
217
168
|
clearTimeout(silenceTimer);
|
|
218
169
|
silenceTimer = null;
|
|
219
170
|
}
|
|
220
|
-
};
|
|
221
|
-
async function startRecording() {
|
|
222
171
|
try {
|
|
223
|
-
|
|
172
|
+
// Check if Voice module is available
|
|
173
|
+
if (!_voice.default) {
|
|
174
|
+
console.log('Voice module not available during cleanup');
|
|
175
|
+
return;
|
|
176
|
+
}
|
|
224
177
|
|
|
225
|
-
//
|
|
226
|
-
|
|
178
|
+
// Check if still recognizing
|
|
179
|
+
const isRecognizing = await _voice.default.isRecognizing();
|
|
180
|
+
console.log('Voice.isRecognizing() in cleanup:', isRecognizing);
|
|
181
|
+
if (isRecognizing) {
|
|
227
182
|
try {
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
183
|
+
// For iOS, use cancel for immediate termination
|
|
184
|
+
if (_reactNative.Platform.OS === 'ios') {
|
|
185
|
+
await _voice.default.cancel();
|
|
186
|
+
console.log('Voice.cancel() completed for iOS');
|
|
187
|
+
} else {
|
|
188
|
+
await _voice.default.stop();
|
|
189
|
+
console.log('Voice.stop() completed for Android');
|
|
190
|
+
}
|
|
191
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
231
192
|
} catch (e) {
|
|
232
|
-
console.log('
|
|
193
|
+
console.log('Error stopping/canceling in cleanup:', e);
|
|
233
194
|
}
|
|
234
195
|
}
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
196
|
+
|
|
197
|
+
// Destroy the instance
|
|
198
|
+
try {
|
|
199
|
+
await _voice.default.destroy();
|
|
200
|
+
console.log('Voice.destroy() completed');
|
|
201
|
+
await new Promise(resolve => setTimeout(resolve, 200));
|
|
202
|
+
} catch (e) {
|
|
203
|
+
console.log('Error destroying in cleanup:', e);
|
|
238
204
|
}
|
|
239
|
-
|
|
240
|
-
|
|
205
|
+
} catch (error) {
|
|
206
|
+
console.error('Error in cleanupVoiceSession:', error);
|
|
207
|
+
}
|
|
208
|
+
finalResult = '';
|
|
209
|
+
};
|
|
210
|
+
async function startRecording() {
|
|
211
|
+
try {
|
|
212
|
+
console.log('startRecording called');
|
|
213
|
+
|
|
214
|
+
// Check if Voice module is available
|
|
215
|
+
if (!_voice.default) {
|
|
216
|
+
console.error('Voice module is not available');
|
|
241
217
|
return false;
|
|
242
218
|
}
|
|
219
|
+
|
|
220
|
+
// Ensure cleanup of any existing session
|
|
221
|
+
await cleanupVoiceSession();
|
|
222
|
+
|
|
223
|
+
// Small delay to ensure cleanup is complete
|
|
224
|
+
await new Promise(resolve => setTimeout(resolve, 200));
|
|
243
225
|
const hasPermission = await requestAudioPermission();
|
|
244
226
|
if (!hasPermission) {
|
|
245
227
|
console.error('No permission to record audio');
|
|
246
228
|
return false;
|
|
247
229
|
}
|
|
248
|
-
const recognizing = await _voice.default.isRecognizing();
|
|
249
|
-
console.log('[startRecording] Voice.isRecognizing():', recognizing);
|
|
250
|
-
if (recognizing) {
|
|
251
|
-
console.log('[startRecording] Already recognizing, canceling first');
|
|
252
|
-
await _voice.default.cancel();
|
|
253
|
-
// Wait longer for cancel to take effect
|
|
254
|
-
await new Promise(r => setTimeout(r, 500));
|
|
255
230
|
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
console.log('[startRecording] Still recognizing after cancel, stopping');
|
|
261
|
-
try {
|
|
262
|
-
await _voice.default.stop();
|
|
263
|
-
await new Promise(r => setTimeout(r, 300));
|
|
264
|
-
} catch (e) {
|
|
265
|
-
console.log('[startRecording] Error stopping:', e);
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
console.log('[startRecording] Calling Voice.start()');
|
|
231
|
+
// Re-initialize listeners each time for iOS stability
|
|
232
|
+
await initVoice(resultCallback, partialResultCallback);
|
|
233
|
+
|
|
234
|
+
// Start recognition
|
|
270
235
|
await _voice.default.start('en-US');
|
|
271
|
-
console.log('
|
|
272
|
-
|
|
236
|
+
console.log('Voice.start() completed');
|
|
237
|
+
isCurrentlyRecording = true;
|
|
273
238
|
return true;
|
|
274
239
|
} catch (error) {
|
|
275
240
|
console.error('Error starting voice recognition:', error);
|
|
276
|
-
cleanupVoiceSession();
|
|
241
|
+
await cleanupVoiceSession();
|
|
277
242
|
return false;
|
|
278
243
|
}
|
|
279
244
|
}
|
|
280
245
|
async function stopRecording() {
|
|
281
246
|
try {
|
|
282
|
-
console.log('
|
|
283
|
-
|
|
284
|
-
|
|
285
|
-
console.log('[stopRecording] Invalid state or no Voice, returning');
|
|
247
|
+
console.log('stopRecording called');
|
|
248
|
+
if (!isCurrentlyRecording || !_voice.default) {
|
|
249
|
+
console.log('Not recording or Voice not available');
|
|
286
250
|
return;
|
|
287
251
|
}
|
|
288
252
|
|
|
289
|
-
//
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
253
|
+
// Set this first to prevent race conditions
|
|
254
|
+
isCurrentlyRecording = false;
|
|
255
|
+
if (silenceTimer) {
|
|
256
|
+
clearTimeout(silenceTimer);
|
|
257
|
+
silenceTimer = null;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
// Platform-specific stop
|
|
261
|
+
try {
|
|
262
|
+
if (_reactNative.Platform.OS === 'ios') {
|
|
263
|
+
// iOS: Use cancel for immediate termination
|
|
264
|
+
await _voice.default.cancel();
|
|
265
|
+
console.log('Voice.cancel() completed for iOS');
|
|
266
|
+
} else {
|
|
267
|
+
// Android: Use stop
|
|
268
|
+
await _voice.default.stop();
|
|
269
|
+
console.log('Voice.stop() completed for Android');
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// Small delay
|
|
273
|
+
await new Promise(resolve => setTimeout(resolve, 100));
|
|
274
|
+
} catch (error) {
|
|
275
|
+
console.log('Error stopping/canceling Voice:', error);
|
|
276
|
+
}
|
|
277
|
+
|
|
278
|
+
// Then destroy
|
|
279
|
+
try {
|
|
280
|
+
await _voice.default.destroy();
|
|
281
|
+
console.log('Voice.destroy() completed');
|
|
282
|
+
await new Promise(resolve => setTimeout(resolve, 200));
|
|
283
|
+
} catch (error) {
|
|
284
|
+
console.log('Error destroying Voice:', error);
|
|
293
285
|
}
|
|
294
|
-
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
console.log('[stopRecording] Voice.stop() completed');
|
|
286
|
+
|
|
287
|
+
// Final cleanup
|
|
288
|
+
finalResult = '';
|
|
298
289
|
} catch (error) {
|
|
299
290
|
console.error('Error in stopRecording:', error);
|
|
300
|
-
cleanupVoiceSession();
|
|
291
|
+
await cleanupVoiceSession();
|
|
301
292
|
}
|
|
302
293
|
}
|
|
303
294
|
async function cancelRecording() {
|
|
304
295
|
try {
|
|
305
296
|
if (!_voice.default) return;
|
|
306
297
|
await _voice.default.cancel();
|
|
307
|
-
cleanupVoiceSession();
|
|
298
|
+
await cleanupVoiceSession();
|
|
308
299
|
} catch (error) {
|
|
309
300
|
console.error('Error canceling voice recognition:', error);
|
|
310
|
-
cleanupVoiceSession();
|
|
301
|
+
await cleanupVoiceSession();
|
|
311
302
|
}
|
|
312
303
|
}
|
|
313
304
|
async function requestAudioPermission() {
|
|
@@ -390,6 +381,19 @@ function resetStoredPermission() {
|
|
|
390
381
|
return false;
|
|
391
382
|
}
|
|
392
383
|
function cleanup() {
|
|
393
|
-
|
|
384
|
+
if (!_voice.default) {
|
|
385
|
+
console.log('Voice module not available during cleanup');
|
|
386
|
+
return;
|
|
387
|
+
}
|
|
388
|
+
_voice.default.destroy().then(() => {
|
|
389
|
+
_voice.default.removeAllListeners();
|
|
390
|
+
cleanupVoiceSession();
|
|
391
|
+
}).catch(error => {
|
|
392
|
+
console.error('Error in cleanup:', error);
|
|
393
|
+
// Try one more time
|
|
394
|
+
if (_voice.default) {
|
|
395
|
+
_voice.default.destroy().catch(e => console.error('Final cleanup attempt failed:', e));
|
|
396
|
+
}
|
|
397
|
+
});
|
|
394
398
|
}
|
|
395
399
|
//# sourceMappingURL=audioRecorder.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_reactNative","require","_voice","_interopRequireDefault","_reactNativePermissions","e","__esModule","default","resultCallback","partialResultCallback","silenceTimer","finalResult","SILENCE_DURATION","State","IDLE","LISTENING","FINALIZING","state","listenersBound","PERMISSION_STORAGE_KEY","permissionStatusGetter","permissionStatusSetter","setPermissionStatusHandlers","getter","setter","initVoice","onResult","onPartialResult","Voice","console","error","isAvailable","removeAllListeners","onSpeechStart","log","clearSilenceTimer","onSpeechRecognized","onSpeechEnd","Platform","OS","setTimeout","onSpeechError","_e$error","_e$error2","code","toString","msg","message","includes","onSpeechResults","value","length","stopRecording","onSpeechPartialResults","handleSilenceDetection","onSpeechVolumeChanged","clearTimeout","handleFinalResult","cleanupVoiceSession","startRecording","destroy","Promise","r","hasPermission","requestAudioPermission","recognizing","isRecognizing","cancel","stillRecognizing","stop","start","cancelRecording","storedPermission","permissionResult","requestAndroidPermission","requestIOSPermission","micPermission","request","PERMISSIONS","ANDROID","RECORD_AUDIO","RESULTS","GRANTED","services","getSpeechRecognitionServices","IOS","MICROPHONE","speechPermission","SPEECH_RECOGNITION","resetStoredPermission","cleanup"],"sourceRoot":"../../../src","sources":["utils/audioRecorder.js"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_reactNative","require","_voice","_interopRequireDefault","_reactNativePermissions","e","__esModule","default","resultCallback","partialResultCallback","silenceTimer","isCurrentlyRecording","finalResult","SILENCE_DURATION","PERMISSION_STORAGE_KEY","permissionStatusGetter","permissionStatusSetter","setPermissionStatusHandlers","getter","setter","initVoice","onResult","onPartialResult","Voice","console","error","isAvailable","removeAllListeners","onSpeechStart","log","clearTimeout","onSpeechRecognized","isFinal","handleFinalResult","onSpeechEnd","onSpeechError","_e$error","_e$error2","code","toString","msg","message","Platform","OS","includes","cleanupVoiceSession","onSpeechResults","value","length","handleSilenceDetection","onSpeechPartialResults","onSpeechVolumeChanged","setTimeout","stopRecording","isRecognizing","cancel","stop","Promise","resolve","destroy","startRecording","hasPermission","requestAudioPermission","start","cancelRecording","storedPermission","permissionResult","requestAndroidPermission","requestIOSPermission","micPermission","request","PERMISSIONS","ANDROID","RECORD_AUDIO","RESULTS","GRANTED","services","getSpeechRecognitionServices","IOS","MICROPHONE","speechPermission","SPEECH_RECOGNITION","resetStoredPermission","cleanup","then","catch"],"sourceRoot":"../../../src","sources":["utils/audioRecorder.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -13,7 +13,8 @@ export const ChatInput = ({
|
|
|
13
13
|
input,
|
|
14
14
|
setInput,
|
|
15
15
|
showModal,
|
|
16
|
-
data
|
|
16
|
+
data,
|
|
17
|
+
isListening
|
|
17
18
|
} = useContext(AppContext);
|
|
18
19
|
const inputRef = useRef(null);
|
|
19
20
|
const handleKeyPress = ({
|
|
@@ -42,7 +43,7 @@ export const ChatInput = ({
|
|
|
42
43
|
style: styles.input,
|
|
43
44
|
value: input,
|
|
44
45
|
onChangeText: setInput,
|
|
45
|
-
placeholder: "Ask a question...",
|
|
46
|
+
placeholder: isListening && !input ? "Listening..." : "Ask a question...",
|
|
46
47
|
placeholderTextColor: "#999",
|
|
47
48
|
multiline: false,
|
|
48
49
|
returnKeyType: "send",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","useContext","useRef","Text","StyleSheet","View","TextInput","TouchableOpacity","Platform","KeyboardAvoidingView","Keyboard","Header","AppContext","Ionicons","VoiceButton","ChatInput","onProductCardClick","onAddToCartClick","handleSend","input","setInput","showModal","data","inputRef","handleKeyPress","nativeEvent","key","shiftKey","preventDefault","onSubmitEditing","trim","createElement","Fragment","style","styles","textBeta","allowFontScaling","inputWrapper","inputContainer","ref","value","onChangeText","placeholder","placeholderTextColor","multiline","returnKeyType","enablesReturnKeyAutomatically","onKeyPress","selection","undefined","blurOnSubmit","text","current","blur","setTimeout","focus","OS","setSelection","length","sendButton","onPress","name","size","color","create","backgroundColor","paddingHorizontal","paddingVertical","borderTopWidth","borderTopColor","flexDirection","alignItems","borderRadius","margin","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","flex","fontSize","inputButton","padding","marginLeft","disabledButton","opacity","textAlign","fontWeight","marginTop","marginBottom","textBreakStrategy","lineHeight"],"sourceRoot":"../../../src","sources":["components/input.js"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACtE,SACEC,IAAI,EACJC,UAAU,EACVC,IAAI,EACJC,SAAS,EACTC,gBAAgB,EAChBC,QAAQ,EACRC,oBAAoB,EACpBC,QAAQ,QACH,cAAc;AACrB,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,SAASC,UAAU,QAAQ,wBAAwB;AACnD,OAAOC,QAAQ,MAAM,oCAAoC;AACzD,SAASC,WAAW,QAAQ,SAAS;AAErC,OAAO,MAAMC,SAAS,GAAGA,CAAC;EAAEC,kBAAkB;EAAEC;AAAiB,CAAC,KAAK;EACrE,MAAM;IAAEC,UAAU;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,SAAS;IAAEC;
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useContext","useRef","Text","StyleSheet","View","TextInput","TouchableOpacity","Platform","KeyboardAvoidingView","Keyboard","Header","AppContext","Ionicons","VoiceButton","ChatInput","onProductCardClick","onAddToCartClick","handleSend","input","setInput","showModal","data","isListening","inputRef","handleKeyPress","nativeEvent","key","shiftKey","preventDefault","onSubmitEditing","trim","createElement","Fragment","style","styles","textBeta","allowFontScaling","inputWrapper","inputContainer","ref","value","onChangeText","placeholder","placeholderTextColor","multiline","returnKeyType","enablesReturnKeyAutomatically","onKeyPress","selection","undefined","blurOnSubmit","text","current","blur","setTimeout","focus","OS","setSelection","length","sendButton","onPress","name","size","color","create","backgroundColor","paddingHorizontal","paddingVertical","borderTopWidth","borderTopColor","flexDirection","alignItems","borderRadius","margin","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","flex","fontSize","inputButton","padding","marginLeft","disabledButton","opacity","textAlign","fontWeight","marginTop","marginBottom","textBreakStrategy","lineHeight"],"sourceRoot":"../../../src","sources":["components/input.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -11,9 +11,10 @@ export const VoiceButton = ({
|
|
|
11
11
|
setInput
|
|
12
12
|
}) => {
|
|
13
13
|
const {
|
|
14
|
-
handleVoiceSend
|
|
14
|
+
handleVoiceSend,
|
|
15
|
+
isListening,
|
|
16
|
+
setIsListening
|
|
15
17
|
} = useContext(AppContext);
|
|
16
|
-
const [isListening, setIsListening] = useState(false);
|
|
17
18
|
const [loading, setLoading] = useState(false);
|
|
18
19
|
const [permissionChecked, setPermissionChecked] = useState(false);
|
|
19
20
|
const [hasPermission, setHasPermission] = useState(null);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useContext","useEffect","TouchableOpacity","ActivityIndicator","StyleSheet","Alert","Linking","Platform","Ionicons","useAsyncStorage","startRecording","stopRecording","cancelRecording","requestAudioPermission","cleanup","initVoice","resetStoredPermission","setPermissionStatusHandlers","AppContext","PERMISSION_STORAGE_KEY","VoiceButton","setInput","handleVoiceSend","isListening","setIsListening","loading","setLoading","permissionChecked","setPermissionChecked","hasPermission","setHasPermission","permissionStatus","setPermissionStatus","setupVoice","permissionResult","initialized","result","error","console","log","includes","alert","partialResult","toggleRecording","text","style","onPress","openAppSettings","checkPermission","started","OS","openURL","openSettings","createElement","styles","button","disabled","size","color","name","create","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["components/voice.js"],"mappings":"AAAA;;AAEA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,UAAU,EAAEC,SAAS,QAAQ,OAAO;AAC9D,SAASC,gBAAgB,EAAEC,iBAAiB,EAAEC,UAAU,EAAEC,KAAK,EAAEC,OAAO,EAAEC,QAAQ,QAAQ,cAAc;AACxG,OAAOC,QAAQ,MAAM,oCAAoC;AACzD,OAAOC,eAAe,MAAM,0BAA0B;AAEtD,SACEC,cAAc,EACdC,aAAa,EACbC,eAAe,EACfC,sBAAsB,EACtBC,OAAO,EACPC,SAAS,EACTC,qBAAqB,EACrBC,2BAA2B,QACtB,wBAAwB;AAC/B,SAASC,UAAU,QAAQ,wBAAwB;AAEnD,MAAMC,sBAAsB,GAAG,0BAA0B;AAEzD,OAAO,MAAMC,WAAW,GAAGA,CAAC;EAAEC;AAAS,CAAC,KAAK;EAC3C,MAAM;IAAEC;
|
|
1
|
+
{"version":3,"names":["React","useState","useContext","useEffect","TouchableOpacity","ActivityIndicator","StyleSheet","Alert","Linking","Platform","Ionicons","useAsyncStorage","startRecording","stopRecording","cancelRecording","requestAudioPermission","cleanup","initVoice","resetStoredPermission","setPermissionStatusHandlers","AppContext","PERMISSION_STORAGE_KEY","VoiceButton","setInput","handleVoiceSend","isListening","setIsListening","loading","setLoading","permissionChecked","setPermissionChecked","hasPermission","setHasPermission","permissionStatus","setPermissionStatus","setupVoice","permissionResult","initialized","result","error","console","log","includes","alert","partialResult","toggleRecording","text","style","onPress","openAppSettings","checkPermission","started","OS","openURL","openSettings","createElement","styles","button","disabled","size","color","name","create","justifyContent","alignItems"],"sourceRoot":"../../../src","sources":["components/voice.js"],"mappings":"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","ignoreList":[]}
|
|
@@ -14,7 +14,8 @@ export const WelcomeInput = ({
|
|
|
14
14
|
input,
|
|
15
15
|
setInput,
|
|
16
16
|
showModal,
|
|
17
|
-
theme
|
|
17
|
+
theme,
|
|
18
|
+
isListening
|
|
18
19
|
} = useContext(AppContext);
|
|
19
20
|
const inputRef = useRef(null);
|
|
20
21
|
const handleKeyPress = ({
|
|
@@ -38,7 +39,7 @@ export const WelcomeInput = ({
|
|
|
38
39
|
style: styles.input,
|
|
39
40
|
value: input,
|
|
40
41
|
onChangeText: setInput,
|
|
41
|
-
placeholder: "Ask a question...",
|
|
42
|
+
placeholder: isListening && !input ? "Listening..." : "Ask a question...",
|
|
42
43
|
placeholderTextColor: "#999",
|
|
43
44
|
multiline: false,
|
|
44
45
|
returnKeyType: "send",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useState","useEffect","useContext","useRef","Text","StyleSheet","View","TextInput","TouchableOpacity","Platform","KeyboardAvoidingView","Keyboard","Header","AppContext","Ionicons","VoiceButton","WelcomeInput","onProductCardClick","onAddToCartClick","data","handleSend","input","setInput","showModal","theme","inputRef","handleKeyPress","nativeEvent","key","shiftKey","preventDefault","onSubmitEditing","trim","createElement","style","styles","inputContainer","ref","value","onChangeText","placeholder","placeholderTextColor","multiline","returnKeyType","enablesReturnKeyAutomatically","onKeyPress","selection","undefined","text","current","blur","setTimeout","focus","OS","setSelection","length","sendButton","onPress","disabled","name","size","color","primaryColor","create","flexDirection","alignItems","paddingHorizontal","paddingVertical","backgroundColor","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","flex","fontSize","inputButton","padding","marginLeft","disabledButton","opacity"],"sourceRoot":"../../../src","sources":["components/welcomeInput.js"],"mappings":"AAAA,OAAOA,KAAK,IAAIC,QAAQ,EAAEC,SAAS,EAAEC,UAAU,EAAEC,MAAM,QAAQ,OAAO;AACtE,SACEC,IAAI,EACJC,UAAU,EACVC,IAAI,EACJC,SAAS,EACTC,gBAAgB,EAChBC,QAAQ,EACRC,oBAAoB,EACpBC,QAAQ,QACH,cAAc;AACrB,SAASC,MAAM,QAAQ,sBAAsB;AAC7C,SAASC,UAAU,QAAQ,wBAAwB;AACnD,OAAOC,QAAQ,MAAM,oCAAoC;AACzD,SAASC,WAAW,QAAQ,SAAS;AAErC,OAAO,MAAMC,YAAY,GAAGA,CAAC;EAAEC,kBAAkB;EAAEC;AAAiB,CAAC,KAAK;EAExE,MAAM;IAAEC,IAAI;IAAEC,UAAU;IAAEC,KAAK;IAAEC,QAAQ;IAAEC,SAAS;IAAEC;
|
|
1
|
+
{"version":3,"names":["React","useState","useEffect","useContext","useRef","Text","StyleSheet","View","TextInput","TouchableOpacity","Platform","KeyboardAvoidingView","Keyboard","Header","AppContext","Ionicons","VoiceButton","WelcomeInput","onProductCardClick","onAddToCartClick","data","handleSend","input","setInput","showModal","theme","isListening","inputRef","handleKeyPress","nativeEvent","key","shiftKey","preventDefault","onSubmitEditing","trim","createElement","style","styles","inputContainer","ref","value","onChangeText","placeholder","placeholderTextColor","multiline","returnKeyType","enablesReturnKeyAutomatically","onKeyPress","selection","undefined","text","current","blur","setTimeout","focus","OS","setSelection","length","sendButton","onPress","disabled","name","size","color","primaryColor","create","flexDirection","alignItems","paddingHorizontal","paddingVertical","backgroundColor","borderRadius","shadowColor","shadowOffset","width","height","shadowOpacity","shadowRadius","elevation","flex","fontSize","inputButton","padding","marginLeft","disabledButton","opacity"],"sourceRoot":"../../../src","sources":["components/welcomeInput.js"],"mappings":"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","ignoreList":[]}
|