feat(desktop): information architecture overhaul — home, records, meetings first
Wave 2 of the 2026-09-28 design overhaul ("records are the main
character, a quiet instrument"). Decisions: design.md.
- Shell: sidebar with primary Home / Records / Meetings (Ctrl+1..3) and a
secondary "Tools" group; every item is a button with aria-current.
The status bar is removed — its "100% LOCAL PRIVACY · ZERO CLOUD SYNC"
claim contradicted device sync; the sidebar shows only queried state.
- Navigation context (routes, params, back, useRouteRequest) so Home can
open a specific meeting or record.
- Home replaces the dashboard: dictation key, start actions, only real
problems, one-line summary, recent records and meetings, file
transcription, free-tier limits.
- Settings become a full-screen route with vertical tabs (tabs no longer
clip) and a shared row grammar; long-standing bugs fixed: team and
enterprise tiers crashed the license tab (currentTier undefined),
first-run onboarding could not be left, Pro+ saw "upgrade to Pro+".
- Records: date-grouped single list with in-place expansion, search and
tags together, mode/favorite filters, load more past 50, undoable
delete. Meetings: list with search/rename/delete, summary-first detail
(summary | transcript | documents | my notes), notes persisted locally
instead of being lost. Tools pages cleaned up; stale-closure example
chips and a 1550x mouse-distance bug fixed.
- Shared pieces: PageHeader, EmptyStateCard, SearchInput ("/" works),
ConfirmDialog, notify with undo; display-labels maps domain values to
typed i18n keys so missing keys fail to compile.
- Mono font stack falls back to Pretendard for Hangul (Korean labels no
longer render spaced out).
- i18n: new ko/en keys via scripts/i18n-add-keys.mjs (one read-merge-
write so parallel editors cannot clobber locale files).
Some renderer files also carried pre-existing in-flight changes (error
recovery deep links, meeting document hooks); they are included as-is.
This commit is contained in:
parent
ba9ef9741e
commit
f064c93197
96 changed files with 12886 additions and 8924 deletions
|
|
@ -320,10 +320,16 @@ export const FONT_SANS = [
|
|||
'"Helvetica Neue"', 'Arial', '"Malgun Gothic"', 'sans-serif',
|
||||
].join(',')
|
||||
|
||||
/** 숫자·코드·키 이름(라틴) 전용. 한글이 섞일 수 있는 문자열에는 쓰지 않는다 — 한글 글리프가 없어 자간이 벌어진다. */
|
||||
/**
|
||||
* 숫자·코드·키 이름(라틴) 전용 모노 스택.
|
||||
* 라틴 모노 폰트에는 한글 글리프가 없다. 바로 뒤에 한글 산세리프를 두지 않으면 Windows 가 한글을
|
||||
* 고정폭 한글 폰트(굴림체 계열)로 대체해 "누 름 유 지"처럼 벌어진다(2026-09-28 실측). 그래서 라틴 모노 다음에
|
||||
* Pretendard → 시스템 한글 폰트를 두어, 한글이 섞여도 한글 글자만 산세리프로 그려지게 한다.
|
||||
*/
|
||||
export const FONT_MONO = [
|
||||
'ui-monospace', 'SFMono-Regular', '"SF Mono"', 'Menlo', 'Consolas',
|
||||
'"Liberation Mono"', 'monospace',
|
||||
'"Liberation Mono"', '"Pretendard Variable"', 'Pretendard',
|
||||
'"Apple SD Gothic Neo"', '"Noto Sans KR"', '"Malgun Gothic"', 'monospace',
|
||||
].join(',')
|
||||
|
||||
// ── CSS Custom Properties ────────────────────────────────────
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue