UI/UX: Adiciona campo opcional para colagem manual de transcrição no VideoMind

This commit is contained in:
2026-06-05 22:19:33 +00:00
parent 281005a8bc
commit 3781c848da
2395 changed files with 242184 additions and 20 deletions
+5 -1
View File
@@ -4800,6 +4800,9 @@ const initApp = () => {
if (btnGenerateVideoMind) {
btnGenerateVideoMind.addEventListener('click', async () => {
const url = videoMindUrlInput.value.trim();
const pastedTranscriptInput = document.getElementById('videoMindPastedTranscriptInput');
const pastedTranscript = pastedTranscriptInput ? pastedTranscriptInput.value.trim() : '';
if (!url) {
alert('Por favor, insira o link de um vídeo do YouTube.');
return;
@@ -4837,7 +4840,8 @@ const initApp = () => {
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
url,
lines: selectedVideoMindLines
lines: selectedVideoMindLines,
pastedTranscript
})
});
+10 -1
View File
@@ -1339,9 +1339,18 @@
<input type="text" id="videoMindUrlInput" placeholder="Ex: https://www.youtube.com/watch?v=..." class="obs-input" style="width: 100%; margin-top: 4px; padding: 10px;">
</div>
<!-- INPUT TRANSCRICAO (OPCIONAL) -->
<div class="settings-group">
<label style="color: var(--text-secondary); font-size: 0.82rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px;">2. Colar Transcrição Manual (Opcional)</label>
<div style="font-size: 0.8rem; color: var(--text-muted); margin-top: 2px; margin-bottom: 6px; line-height: 1.3;">
⚠️ O YouTube costuma bloquear a extração automática. Se ocorrer erro de bloqueio, use a extensão <b>NoteGPT</b> no seu navegador, copie toda a transcrição e cole aqui para uma análise perfeita.
</div>
<textarea id="videoMindPastedTranscriptInput" placeholder="Cole o texto bruto da transcrição do vídeo aqui..." class="obs-input" style="width: 100%; margin-top: 4px; padding: 10px; min-height: 80px; resize: vertical; font-family: inherit;"></textarea>
</div>
<!-- TAMANHO DO RESUMO -->
<div class="settings-group">
<label style="color: var(--text-secondary); font-size: 0.82rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px;">2. Tamanho do Resumo Desejado</label>
<label style="color: var(--text-secondary); font-size: 0.82rem; font-weight: 600; text-transform: uppercase; letter-spacing: 0.5px;">3. Tamanho do Resumo Desejado</label>
<div class="music-option-grid" style="display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 4px;">
<button type="button" class="btn-music-option btn-videomind-lines active" data-lines="20">📝 Curto (~20 linhas)</button>
<button type="button" class="btn-music-option btn-videomind-lines" data-lines="50">📄 Médio (~50 linhas)</button>
+1 -1
View File
@@ -1,4 +1,4 @@
const CACHE_NAME = 'camila-ai-v8';
const CACHE_NAME = 'camila-ai-v10';
const urlsToCache = [
'/',
'/index.html',