Skip to content
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions js/audio/shared/MinimalAudioPlayer.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -16,10 +16,10 @@

let container: HTMLDivElement;
let waveform: WaveSurfer | undefined;
let playing = false;
let duration = 0;
let currentTime = 0;
let waveform_ready = false;
let playing = $state(false);
let duration = $state(0);
let currentTime = $state(0);
let waveform_ready = $state(false);

let resolved_src = $derived(value.url);

Expand Down
23 changes: 15 additions & 8 deletions js/audio/shared/MinimalAudioRecorder.svelte
Original file line number Diff line number Diff line change
Expand Up @@ -33,14 +33,14 @@

let container: HTMLDivElement;
let waveform: WaveSurfer | undefined;
let record: RecordPlugin | undefined;
let seconds = 0;
let record: RecordPlugin | undefined = $state();
let seconds = $state(0);
let interval: NodeJS.Timeout;
let is_recording = false;
let has_started = false;
let mic_devices: MediaDeviceInfo[] = [];
let selected_device_id: string = "";
let show_device_selection = false;
let is_recording = $state(false);
let has_started = $state(false);
let mic_devices: MediaDeviceInfo[] = $state([]);
let selected_device_id: string = $state("");
let show_device_selection = $state(false);

const start_interval = (): void => {
clearInterval(interval);
Expand Down Expand Up @@ -170,6 +170,9 @@
) {
record.startMic({ deviceId: selected_device_id }).then(() => {
record?.startRecording();
}).catch((err) => {
console.error("Failed to access microphone:", err);
onclear?.();
});
} else if (!recording && is_recording && record) {
record.stopRecording();
Expand Down Expand Up @@ -229,7 +232,11 @@
<button
class="stop-button"
onclick={() => {
recording = false;
if (is_recording) {
recording = false;
} else {
onclear?.();
}
}}
aria-label="Stop recording"
>
Expand Down
Loading