iamdoubz
3f04ec6167
fix(playback): silence a11y warning on transcript scroll-intent handlers
2026-07-12 09:36:14 -05:00
iamdoubz
030b06329a
feat(i18n): display-language selector in Settings + t() on nav and transcription-language strings
2026-07-12 09:35:22 -05:00
iamdoubz
a7af623753
feat(i18n): reactive t() store with localStorage locale, English fallback
2026-07-12 09:34:14 -05:00
iamdoubz
b98c258c13
feat(i18n): English translation baseline (en.json)
2026-07-12 09:33:59 -05:00
iamdoubz
8ca6cf4f89
feat(export): add 'obsidian' to exportMeeting format union (FR-STORE-4)
2026-07-12 09:32:49 -05:00
iamdoubz
d5aef2966f
feat(playback): click transcript to seek + highlight/scroll active line; Obsidian export button (FR-REC-5, FR-STORE-4)
2026-07-12 09:31:14 -05:00
iamdoubz
2389fb05a5
feat(playback): seek audio on transcript click, push position on timeupdate (FR-REC-5)
2026-07-12 09:28:21 -05:00
iamdoubz
96d02cc220
feat(playback): shared player store to sync transcript<->audio (FR-REC-5)
2026-07-12 09:27:46 -05:00
iamdoubz
c3da6cf0f3
style(settings): prettier formatting for export/import copy
2026-07-11 22:48:55 -05:00
iamdoubz
23cfca7ea2
feat(export): Export/Import section in Settings → Storage (FR-STORE-4)
2026-07-11 22:43:51 -05:00
iamdoubz
6129866ac5
feat(export): importMeetingBundle api binding
2026-07-11 22:42:21 -05:00
iamdoubz
836547596b
feat(action-items): manual add/delete/edit action items in the summary panel
2026-07-11 22:34:12 -05:00
iamdoubz
58215076cb
feat(action-items): add action_items to Meeting type
2026-07-11 22:32:27 -05:00
iamdoubz
9c74f84c5b
feat(transcript): show per-segment timestamps in live and finalized views
2026-07-11 22:29:43 -05:00
iamdoubz
7ef45bb315
feat(ui): Add meeting button + import modal wiring in the header
2026-07-11 00:37:53 -05:00
iamdoubz
bd251b991a
feat(ui): add-a-meeting modal for importing a file or URL
2026-07-11 00:37:51 -05:00
iamdoubz
dfaeb7c873
feat(ui): import_media command in the typed api
2026-07-11 00:37:50 -05:00
iamdoubz
6b164cd02a
feat(ui): auto-start-on-calendar-event toggle in Settings > Recording
2026-07-11 00:31:34 -05:00
iamdoubz
21101054a4
feat(ui): arm a one-shot auto-record timer for the next calendar event (FR-CAL)
2026-07-11 00:31:32 -05:00
iamdoubz
16200a130e
feat(ui): let recording.start attach a calendar event id
2026-07-11 00:31:31 -05:00
iamdoubz
86f115642c
feat(ui): default auto_record_calendar off in the settings store
2026-07-11 00:31:29 -05:00
iamdoubz
1760d4ae24
feat(ui): add auto_record_calendar to the settings contract
2026-07-11 00:31:16 -05:00
iamdoubz
29589663b2
feat(ui): pass mic level + enabled state to the level meter
2026-07-11 00:27:06 -05:00
iamdoubz
28058e205d
feat(ui): overlay mic level on the meter in the accent colour (FR-CAP-5/7)
2026-07-11 00:27:05 -05:00
iamdoubz
235129d0d6
feat(ui): track microphone level separately in the recording store
2026-07-11 00:27:03 -05:00
iamdoubz
59c2d70643
feat(ui): tag recording level events with mic vs system source (FR-CAP-7)
2026-07-11 00:27:02 -05:00
iamdoubz
e082f99f32
feat(ui): speaker diarization download cards in Settings > Hardware
2026-07-11 00:23:19 -05:00
iamdoubz
5260a4240b
feat(ui): load/download/remove diarization models in the settings store
2026-07-11 00:23:18 -05:00
iamdoubz
bf644ea0be
feat(ui): expose diarization models over the typed api (FR-MODEL-1)
2026-07-11 00:23:17 -05:00
iamdoubz
13fb9984da
feat(ui): model download cards + PST import range + calendar cleanup
...
Settings > Hardware: the Models list is now a bordered card row per
model with active/installed badges and a real progress bar for
downloads (was plain text links + a bare "downloading NN%" string),
using the app's existing lucide icon set.
Settings > Calendar: an Import range picker (30/90/180/365 days/all
time, persisted, applied to both a manual Import and the pst_auto_sync
startup re-import) and a Clean up section (delete all / older-than-N
threshold, confirm() gated, always reports how many events were kept
because they're linked to a meeting) -- fixes the 14,686-row bloat from
importing a mailbox's entire unbounded history.
2026-07-11 00:13:02 -05:00
iamdoubz
99d50583cf
feat(ui): live notes pane, click-to-annotate transcript, resizable split
...
Granola-style redesign: the live-recording view gains a Notes pane
(bound to recording.notesText) alongside the transcript, and each
transcript line is clickable to attach/edit a note for that moment
(recording.segmentNotes, badge on annotated lines).
Also, for both the live and finalized-meeting layouts: the
transcript/notes split is now drag-resizable and each side
independently collapsible (Splitter + layout store), and the
post-finalize Notes pane defaults to Preview (rendered) instead of raw
Editor mode, since the merged document is now properly sectioned rather
than a single-speaker blob.
2026-07-11 00:13:01 -05:00
iamdoubz
0027becd10
style(ui): polish Upload now / Save action items / provider select
...
Upload now and Save action items now use the existing .primary
solid-accent button style (with icons) instead of unstyled native
buttons; the AI provider dropdown gets real border/background/hover
states matching the app's other selects.
2026-07-11 00:12:45 -05:00
iamdoubz
e3c80b565c
feat(ui): resizable/hideable meetings-list and summary panes
...
Left (meetings list) and right (summary) panes gain drag-to-resize via
Splitter and a collapse/expand toggle (thin rail + panel icon), sizes
and collapsed state persisted via the layout store.
2026-07-11 00:12:44 -05:00
iamdoubz
2a637e78ad
feat(ui): default pst_import_range_days in the settings fallback
2026-07-11 00:12:29 -05:00
iamdoubz
80ad2a5f76
feat(ui): calendar store passes rangeDays through to importPst
2026-07-11 00:12:28 -05:00
iamdoubz
6622ae81ff
feat(ui): recording store gains live notes state
...
notesText (debounced save, flushed on stop before finalize reads it),
segmentNotes Map keyed by anchor_ms, setNotesText/setSegmentNote.
2026-07-11 00:12:26 -05:00
iamdoubz
90b2d51d08
feat(ui): API bindings for live notes and calendar range/cleanup
...
updateLiveNotes/setSegmentNote; import_pst's rangeDays param;
cleanupCalendarEvents; pst_import_range_days on AppSettings.
2026-07-11 00:12:15 -05:00
iamdoubz
7081040475
feat(ui): layout store for resizable/hideable panes
...
Pane widths, collapsed flags, and the transcript/notes split ratio,
persisted to localStorage (pure client-side UI ephemera, not app data --
no Tauri settings round-trip needed).
2026-07-11 00:12:04 -05:00
iamdoubz
7dfcbdf247
feat(ui): draggable Splitter component for resizable panes
...
WAI-ARIA "window splitter" pattern (role=separator, keyboard-operable) --
reusable divider used by the resizable/hideable pane layout.
2026-07-11 00:12:01 -05:00
iamdoubz
8906f8c8ed
chore(ui): disable the default WebView right-click menu
...
Back/Forward/Reload/Inspect doesn't belong in a native-feeling desktop
app. Disabled app-wide for now, per explicit instruction -- a
WhispAssist-specific context menu is a deferred follow-up, not decided
against.
2026-07-10 22:08:25 -05:00
iamdoubz
e7cc433aff
fix(ui): compute activeModel via $derived instead of invalid {@const} placement (T8.7)
2026-07-07 13:32:26 -05:00
iamdoubz
353d582e96
feat(ui): show meeting language badge + reprocess language picker (T8.7, M4.2)
2026-07-07 13:12:51 -05:00
iamdoubz
7bff39271c
feat(ui): thread optional language override through meetings.reprocess (T8.7, M4.2)
2026-07-07 13:12:46 -05:00
iamdoubz
e6e995efe0
feat(ui): Transcription Language picker in Settings > Hardware (T8.7, M4.2)
2026-07-07 13:11:36 -05:00
iamdoubz
dc969df792
feat(ui): pass configured whisper_language when starting a recording (T8.7, M4.2)
2026-07-07 13:09:21 -05:00
iamdoubz
489271964f
feat(ui): load language catalog + setWhisperLanguage in settings store (T8.7, M4.2)
2026-07-07 13:08:59 -05:00
iamdoubz
4c00496c09
feat(ui): typed API surface for whisper language selection (T8.7, M4.2)
2026-07-07 13:08:13 -05:00
iamdoubz
e966181ab8
Merge branch 'worktree-agent-af5a53986b9441608' into feature_chore_bug_005
...
# Conflicts:
# src-tauri/src/llm/mod.rs
# src/lib/views/Settings.svelte
# src/lib/views/SummaryPanel.svelte
2026-07-07 08:15:04 -05:00
iamdoubz
a68407f059
style(ui): prettier reflow in HostedAiBanner copy
2026-07-07 08:00:08 -05:00
iamdoubz
67fffb0203
style(ui): prettier reflow in Settings.svelte AI banner copy
2026-07-07 08:00:06 -05:00