Ezmary commited on
Commit
dea1223
·
verified ·
1 Parent(s): 46d4f52

Update src/components/control-tray/ControlTray.tsx

Browse files
src/components/control-tray/ControlTray.tsx CHANGED
@@ -4,8 +4,8 @@ import cn from "classnames";
4
  import React, { memo, RefObject, useEffect, useState, useCallback, useRef } from "react";
5
  import { useLiveAPIContext } from "../../contexts/LiveAPIContext";
6
  import { AudioRecorder } from "../../lib/audio-recorder";
7
- import Logo from '../logo/Logo'; // لوگو اینجا استفاده می‌شود
8
- import { PauseIconWithPulse, microphoneIcon, cameraIcon, stopCamIcon } from '../icons';
9
 
10
  const SvgSwitchCameraIcon = () => <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="w-[22px] h-[22px]"><path d="M11 19H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h5"/><path d="M13 5h7a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-5"/><path d="m17 12-3-3 3-3"/><path d="m7 12 3 3-3 3"/></svg>;
11
 
@@ -190,16 +190,16 @@ const ControlTray: React.FC<ControlTrayProps> = ({ videoRef, onVideoStreamChange
190
  setIsSwitchingCamera(false);
191
  }
192
  };
 
 
193
 
194
  return (
195
  <footer id="footer-controls" className="footer-controls-html-like">
196
  <canvas style={{ display: "none" }} ref={renderCanvasRef} />
197
  <div id="mic-button" className="control-button mic-button-color" onClick={handleMicToggle}>
198
- {isAppMicActive ? <PauseIconWithPulse userVolume={userVolume} /> : microphoneIcon}
199
  </div>
200
-
201
- {/* --- 👇 تغییر اصلی اینجاست 👇 --- */}
202
- {/* اگر دوربین فعال است، لوگو را در وسط نمایش بده */}
203
  {isAppCamActive && (
204
  <div id="small-logo-footer-container" className="small-logo-footer-html-like">
205
  <Logo
@@ -207,7 +207,7 @@ const ControlTray: React.FC<ControlTrayProps> = ({ videoRef, onVideoStreamChange
207
  isActive={true}
208
  isAi={false}
209
  speakingVolume={volume}
210
- isUserSpeaking={onUserSpeakingChange.length > 0 && userVolume > 0.01}
211
  />
212
  </div>
213
  )}
 
4
  import React, { memo, RefObject, useEffect, useState, useCallback, useRef } from "react";
5
  import { useLiveAPIContext } from "../../contexts/LiveAPIContext";
6
  import { AudioRecorder } from "../../lib/audio-recorder";
7
+ import Logo from '../logo/Logo';
8
+ import { PauseIconWithSurroundPulse, microphoneIcon, cameraIcon, stopCamIcon, pauseIcon } from '../icons';
9
 
10
  const SvgSwitchCameraIcon = () => <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="2" strokeLinecap="round" strokeLinejoin="round" className="w-[22px] h-[22px]"><path d="M11 19H4a2 2 0 0 1-2-2V7a2 2 0 0 1 2-2h5"/><path d="M13 5h7a2 2 0 0 1 2 2v10a2 2 0 0 1-2 2h-5"/><path d="m17 12-3-3 3-3"/><path d="m7 12 3 3-3 3"/></svg>;
11
 
 
190
  setIsSwitchingCamera(false);
191
  }
192
  };
193
+
194
+ const isSpeaking = onUserSpeakingChange.length > 0 && userVolume > 0.01;
195
 
196
  return (
197
  <footer id="footer-controls" className="footer-controls-html-like">
198
  <canvas style={{ display: "none" }} ref={renderCanvasRef} />
199
  <div id="mic-button" className="control-button mic-button-color" onClick={handleMicToggle}>
200
+ {isAppMicActive ? <PauseIconWithSurroundPulse userVolume={userVolume} /> : microphoneIcon}
201
  </div>
202
+
 
 
203
  {isAppCamActive && (
204
  <div id="small-logo-footer-container" className="small-logo-footer-html-like">
205
  <Logo
 
207
  isActive={true}
208
  isAi={false}
209
  speakingVolume={volume}
210
+ isUserSpeaking={isSpeaking}
211
  />
212
  </div>
213
  )}