Убрана полоса «Дальше» под расшифровкой
Конспект, задачи, ревью и свой запрос — на своих вкладках (у пустой вкладки кнопка «Сделать»). README и CHANGELOG 1.4 — под это. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Родитель:
b82e259
· сравнить с родителем
4 файла
-
CHANGELOG.md +5
Показать разницуСкрыть разницу
16 16 - **Звук ↔ текст.** Нажали на время реплики — звук с этого места; звучащая реплика 17 17 подсвечивается. Пробел — играть и пауза, ←/→ — 5 секунд. 18 18 19 +### Убрано 20 + 21 +- Полоса «Дальше» под расшифровкой — конспект, задачи, ревью и свой запрос делаются на 22 + своих вкладках. 23 + 19 24 ## 1.3 — 01.10.2026 20 25 21 26 Главное: **встреча не потеряется молча** — звук проверяется до записи и во время неё, а ход -
README.md +2 −2
Показать разницуСкрыть разницу
70 70 - «Расшифровка» — реплики с временем и говорящим: «Я» и «Спикер 1, 2, 3…». 71 71 **Имя говорящего можно переименовать**: нажмите на него, впишите «Ольга» — имя 72 72 сменится во всей записи, в конспекте и задачах; 73 − - «Конспект», «Задачи», «Ревью» и «Свой запрос» («напиши письмо клиенту по итогам») — 74 − кнопками в полосе «Дальше» под расшифровкой. Ответ ИИ пишется на глазах. 73 + - «Конспект», «Задачи», «Ревью» и «+ Свой запрос» («напиши письмо клиенту по итогам») — 74 + вкладками; у пустой вкладки одна кнопка «Сделать». Ответ ИИ пишется на глазах. 75 75 76 76 Сверху — «Копировать» (Markdown) и «как текст»; у вкладки — «Править», «Сделать 77 77 заново», «Удалить». Галочки задач отмечаются прямо в тексте. -
Показать разницуСкрыть разницу
327 327 .tr-who-input { justify-self: start; width: min(240px, 100%); padding: 2px 6px; font-size: var(--text-sm); font-weight: 700; } 328 328 .tr-text p { color: var(--kv-body); line-height: 1.6; } 329 329 330 −/* Следующий шаг под расшифровкой */ 331 −.next { 332 − display: flex; flex-wrap: wrap; align-items: center; gap: 8px; 333 − padding: 12px 24px; border-top: 1px solid var(--color-border); background: var(--color-bg-secondary); 334 −} 335 −.next-label { margin-right: 8px; font-size: var(--text-xs); font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; color: var(--color-text-secondary); } 336 − 337 330 /* Проигрыватель — полоса внизу экрана записи */ 338 331 .player { 339 332 position: sticky; bottom: -80px; z-index: 3; -
src/views/meeting.ts +1 −12
Показать разницуСкрыть разницу
223 223 }; 224 224 225 225 // ── Шаг 3: результат ── 226 − const nextStep = () => { 227 − const job = jobs.jobOf(id); 228 − const todo = PRESETS.filter((p) => !section(p.heading)); 229 − if (!hasKey) return ""; 230 − return ` 231 − <div class="next"> 232 − <span class="next-label">Дальше</span> 233 − ${todo.map((p) => `<button class="ui-btn ui-btn-sm" data-make="${esc(p.heading)}" ${job ? "disabled" : ""}>${esc(p.heading)}</button>`).join("")} 234 − <button class="ui-btn ui-btn-sm" data-tab="${esc(CUSTOM_TAB)}">Свой запрос</button> 235 − </div>`; 236 − }; 237 226 const tabContent = () => { 238 227 const job = jobs.jobOf(id); 239 228 const jobError = jobs.errorOf(id); 327 316 </div> 328 317 ${errorLine} 329 318 <div class="pane-body" data-view>${isTranscript ? transcriptView(body, d.meeting.markers ?? []) : `<div class="md">${render(body)}</div>`}</div> 330 − ${isTranscript ? nextStep() : ""}`; 319 + `; 331 320 }; 332 321 333 322 const resultStep = () => `