feat(playlist): replace end-time inputs with play-length (default 15s)

Per-entry and bulk trim inputs now take a play length in seconds
(start + length) instead of an end time. Default 15s, so start=30
produces a 30–45s clip. Converted to endSec at register time; the
trim editor maps its end handle to a length on apply. Backend
unchanged (still works in start/end terms).

Co-Authored-By: Claude Opus 4 <noreply@anthropic.com>
This commit is contained in:
Claude (owner)
2026-06-03 21:29:58 +09:00
parent 7105349a45
commit 2f916fe958
2 changed files with 52 additions and 41 deletions

View File

@@ -42,7 +42,7 @@
<div class="bulkTrimBox">
<span class="idModeLabel">일괄 구간</span>
<label>시작 <input type="text" id="bulkStart" placeholder="0:00" /></label>
<label>종료 <input type="text" id="bulkEnd" placeholder="끝까지" /></label>
<label>길이(초) <input type="text" id="bulkLength" placeholder="15" /></label>
<button type="button" class="secondaryButton" id="bulkApplyBtn">적용</button>
<button type="button" class="secondaryButton" id="bulkResetBtn">초기화</button>
</div>
@@ -101,7 +101,7 @@
<span class="trimDuration" id="plTrimDuration">선택: 0.0초</span>
<label>끝(초, 비우면 끝까지) <input type="number" id="plEndSec" step="0.1" min="0" value="" /></label>
</div>
<p class="muted">재생바의 파란 핸들을 끌어 구간을 정합니다. 적용하면 항목의 시작/종료 시간이 갱신되고, 다운로드 완료 후 이 구간으로 잘립니다.</p>
<p class="muted">재생바의 파란 핸들을 끌어 구간을 정합니다. 적용하면 항목의 시작/길이가 갱신되고, 다운로드 완료 후 이 구간으로 잘립니다.</p>
</div>
<div class="modalActions">
<button type="button" class="secondaryButton" id="trimCancel">취소</button>