diff --git a/src/App.tsx b/src/App.tsx index 54c75bc..8aecd6c 100644 --- a/src/App.tsx +++ b/src/App.tsx @@ -67,12 +67,12 @@ const App: React.FC = () => { }}>✕ ЗАКРЫТЬ
- {overlay === 'case1' && { markComplete('case1'); close(); }} />} - {overlay === 'case2' && { markComplete('case2'); close(); }} />} - {overlay === 'case3' && { markComplete('case3'); close(); }} />} - {overlay === 'case4' && { markComplete('case4'); close(); }} />} - {overlay === 'case5' && { markComplete('case5'); close(); }} />} - {overlay === 'deepfake' && } + {overlay === 'case1' && { markComplete('1'); close(); }} />} + {overlay === 'case2' && { markComplete('2'); close(); }} />} + {overlay === 'case3' && { markComplete('3'); close(); }} />} + {overlay === 'case4' && { markComplete('4'); close(); }} />} + {overlay === 'case5' && { markComplete('5'); close(); }} />} + {overlay === 'deepfake' && { markComplete('deepfake'); close(); }} />} {overlay === 'quiz' && } {overlay === 'wiki' && }
diff --git a/src/components/deepfake/ChatterboxTTS.css b/src/components/deepfake/ChatterboxTTS.css index 219714f..190134d 100644 --- a/src/components/deepfake/ChatterboxTTS.css +++ b/src/components/deepfake/ChatterboxTTS.css @@ -427,3 +427,24 @@ .download-btn:hover { background: rgba(0,255,65,0.2); } + +.complete-btn { + display: block; + margin-top: 16px; + padding: 11px 28px; + background: rgba(0,255,255,0.1); + border: 1px solid #00FFFF; + color: #00FFFF; + border-radius: 6px; + cursor: pointer; + font-family: 'Orbitron', monospace; + font-size: 12px; + font-weight: 700; + letter-spacing: 2px; + transition: all 0.2s; + width: 100%; +} +.complete-btn:hover { + background: rgba(0,255,255,0.2); + box-shadow: 0 0 16px rgba(0,255,255,0.35); +} diff --git a/src/components/deepfake/ChatterboxTTS.tsx b/src/components/deepfake/ChatterboxTTS.tsx index 9da239d..0d528be 100644 --- a/src/components/deepfake/ChatterboxTTS.tsx +++ b/src/components/deepfake/ChatterboxTTS.tsx @@ -5,7 +5,11 @@ import './ChatterboxTTS.css'; const API_URL = 'https://back.hack.kinsle.ru/process-audio'; -const ChatterboxTTS = () => { +interface ChatterboxTTSProps { + onComplete?: () => void; +} + +const ChatterboxTTS = ({ onComplete }: ChatterboxTTSProps) => { // Recording state const [isRecording, setIsRecording] = useState(false); const [hasRecording, setHasRecording] = useState(false); @@ -383,6 +387,11 @@ const ChatterboxTTS = () => {