feat(processed-audio-sources): phase 6 - frontend source type cleanup

Rewrite audio source editor modal for capture/processed types only.
Remove old multichannel/mono/band_extract HTML sections and i18n keys.
Clean up legacy DOM section null-checks in audio-sources.ts.
This commit is contained in:
2026-03-31 19:40:37 +03:00
parent 553463935e
commit 1ce0dc6c61
7 changed files with 106 additions and 193 deletions
@@ -23,10 +23,10 @@
</div>
<!-- Type (hidden — determined by which add button was clicked) -->
<input type="hidden" id="audio-source-type" value="multichannel">
<input type="hidden" id="audio-source-type" value="capture">
<!-- Multichannel fields -->
<div id="audio-source-multichannel-section">
<!-- Capture fields -->
<div id="audio-source-capture-section">
<div class="form-group">
<div class="label-row">
<label for="audio-source-audio-template" data-i18n="audio_source.audio_template">Audio Template:</label>
@@ -53,72 +53,31 @@
</div>
</div>
<!-- Mono fields -->
<div id="audio-source-mono-section" style="display:none">
<!-- Processed fields -->
<div id="audio-source-processed-section" style="display:none">
<div class="form-group">
<div class="label-row">
<label for="audio-source-parent" data-i18n="audio_source.parent">Parent Source:</label>
<label for="audio-source-parent" data-i18n="audio_source.parent">Input Audio Source:</label>
<button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?" data-i18n-aria-label="aria.hint">?</button>
</div>
<small class="input-hint" style="display:none" data-i18n="audio_source.parent.hint">Multichannel source to extract a channel from</small>
<small class="input-hint" style="display:none" data-i18n="audio_source.parent.hint">Audio source to apply processing filters to</small>
<select id="audio-source-parent">
<!-- populated dynamically with multichannel sources -->
<!-- populated dynamically with audio sources -->
</select>
</div>
<div class="form-group">
<div class="label-row">
<label for="audio-source-channel" data-i18n="audio_source.channel">Channel:</label>
<label for="audio-source-processing-template" data-i18n="audio_source.processing_template">Processing Template:</label>
<button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?" data-i18n-aria-label="aria.hint">?</button>
</div>
<small class="input-hint" style="display:none" data-i18n="audio_source.channel.hint">Which audio channel to extract from the multichannel source</small>
<select id="audio-source-channel">
<option value="mono" data-i18n="audio_source.channel.mono">Mono (L+R mix)</option>
<option value="left" data-i18n="audio_source.channel.left">Left</option>
<option value="right" data-i18n="audio_source.channel.right">Right</option>
<small class="input-hint" style="display:none" data-i18n="audio_source.processing_template.hint">Audio processing template with filters to apply to the input source</small>
<select id="audio-source-processing-template">
<!-- populated dynamically -->
</select>
</div>
</div>
<!-- Band Extract fields -->
<div id="audio-source-band-extract-section" style="display:none">
<div class="form-group">
<div class="label-row">
<label for="audio-source-band-parent" data-i18n="audio_source.band_parent">Parent Audio Source:</label>
<button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?" data-i18n-aria-label="aria.hint">?</button>
</div>
<small class="input-hint" style="display:none" data-i18n="audio_source.band_parent.hint">Audio source to extract the frequency band from</small>
<select id="audio-source-band-parent">
<!-- populated dynamically with all audio sources -->
</select>
</div>
<div class="form-group">
<div class="label-row">
<label for="audio-source-band" data-i18n="audio_source.band">Frequency Band:</label>
<button type="button" class="hint-toggle" onclick="toggleHint(this)" title="?" data-i18n-aria-label="aria.hint">?</button>
</div>
<small class="input-hint" style="display:none" data-i18n="audio_source.band.hint">Select a frequency band preset or custom range</small>
<select id="audio-source-band">
<option value="bass" data-i18n="audio_source.band.bass">Bass (20250 Hz)</option>
<option value="mid" data-i18n="audio_source.band.mid">Mid (2504000 Hz)</option>
<option value="treble" data-i18n="audio_source.band.treble">Treble (400020000 Hz)</option>
<option value="custom" data-i18n="audio_source.band.custom">Custom Range</option>
</select>
</div>
<div id="audio-source-custom-freq" style="display:none">
<div class="form-group">
<label for="audio-source-freq-low" data-i18n="audio_source.freq_low">Low Frequency (Hz):</label>
<input type="number" id="audio-source-freq-low" min="20" max="20000" value="20" step="1">
</div>
<div class="form-group">
<label for="audio-source-freq-high" data-i18n="audio_source.freq_high">High Frequency (Hz):</label>
<input type="number" id="audio-source-freq-high" min="20" max="20000" value="20000" step="1">
</div>
</div>
</div>
<!-- Description -->
<div class="form-group">
<div class="label-row">