Commit Graph

  • 8c26876345 feat(transcription): add block-level comment threads with quote support Marcel 2026-04-05 21:05:39 +02:00
  • da43cadb0a feat(comments): add block-level comment endpoints with TDD Marcel 2026-04-05 21:01:02 +02:00
  • 3b2d905041 fix(transcription): reload annotations after drawing block on PDF Marcel 2026-04-05 20:49:01 +02:00
  • 7036f18b25 test(annotations): add tests for dimColor and crosshair cursor Marcel 2026-04-05 20:47:21 +02:00
  • 99e2e6e5c1 feat(transcription): enable drawing turquoise rectangles on PDF to create blocks Marcel 2026-04-05 20:44:45 +02:00
  • aaffee2804 test(frontend): add Vitest specs for DocumentMetadataDrawer and TranscriptionBlock Marcel 2026-04-05 20:38:53 +02:00
  • 18c6bca2dd refactor(transcription): split reorderBlocks for command-query separation Marcel 2026-04-05 20:32:44 +02:00
  • d13f6f69d5 fix(migration): add CHECK constraint on text length (defense in depth) Marcel 2026-04-05 20:29:41 +02:00
  • 052f70e871 fix(transcription): use navigator.sendBeacon for beforeunload save Marcel 2026-04-05 20:28:37 +02:00
  • a3fbcf346b fix(ui): semantic turquoise tokens, badge styling, saved fade animation Marcel 2026-04-05 20:26:41 +02:00
  • b21778b3d1 refactor(types): extract TranscriptionBlockData to shared types Marcel 2026-04-05 20:22:35 +02:00
  • 51c799e20e test(transcription): add TranscriptionServiceTest with 13 unit tests Marcel 2026-04-05 11:46:16 +02:00
  • 6463a32dfc fix: address PR review feedback — security, architecture, dead code Marcel 2026-04-05 11:43:35 +02:00
  • 1efd3d8e23 feat(transcription): add frontend transcription editing UI (#176) Marcel 2026-04-05 11:34:01 +02:00
  • 5211e0b9f7 feat(topbar): add expandable metadata drawer with Details toggle (#175) Marcel 2026-04-05 11:22:38 +02:00
  • 234f83c40b feat(i18n): add translation keys for metadata drawer and transcription Marcel 2026-04-05 11:16:22 +02:00
  • a46b1a2e84 feat(transcription): add backend entities, service, and controller Marcel 2026-04-05 11:13:13 +02:00
  • 5231476c27 feat(transcription): add Flyway migrations for transcription blocks Marcel 2026-04-05 11:12:08 +02:00
  • 46d64f50a5 docs(specs): add final specs for transcription feature Marcel 2026-04-05 09:27:22 +02:00
  • 1a57ec2036 feat(topbar): add divider between sender/receiver block and action buttons Marcel 2026-04-02 11:52:38 +02:00
  • e362bc4977 feat(topbar): remove DocumentStatusChip — status dot has no value for users Marcel 2026-04-02 11:41:03 +02:00
  • 01ba0d4121 feat(topbar): make PersonChip a link to the person detail page Marcel 2026-04-02 11:40:18 +02:00
  • 2e6366faf7 feat(topbar): add topbar_overflow_suffix i18n key and use it in overflow pill button Marcel 2026-04-02 11:39:34 +02:00
  • 9dd35999e0 fix(topbar): fix overflow pill popup clipped and hidden behind pdf viewer Marcel 2026-04-02 11:36:41 +02:00
  • e94f43264c fix(topbar): add overflow-hidden to flex row so long titles truncate instead of pushing kebab off-screen Marcel 2026-04-01 10:23:32 +02:00
  • da7f94de84 feat(topbar): hide sender→receiver chip row below md to make room for buttons Marcel 2026-04-01 10:22:05 +02:00
  • 3f0b686963 feat(topbar): always show annotate-stop button — primary action, not hidden in kebab Marcel 2026-04-01 10:16:38 +02:00
  • 1e9ef63191 refactor(topbar): extract annotate/download actions as Svelte snippets, render in desktop + kebab Marcel 2026-04-01 10:15:31 +02:00
  • 51348ad26a feat(topbar): add mobile kebab menu for annotate/download actions hidden below md Marcel 2026-04-01 10:11:50 +02:00
  • dba1e2a8eb fix(topbar): use Long-Arrow-Right icon for sender→receiver separator Marcel 2026-04-01 10:05:03 +02:00
  • 654b1283c1 fix(topbar): replace → text char with degruyter arrow icon for reliable centering Marcel 2026-04-01 09:59:43 +02:00
  • c5b98af69b fix(topbar): center arrow glyph vertically with inline-flex items-center Marcel 2026-04-01 09:46:37 +02:00
  • 03e2382c8a feat(topbar): increase arrow to 30px and fix vertical alignment with leading-none Marcel 2026-04-01 09:37:28 +02:00
  • 528e1e05ea feat(topbar): increase sender→receiver arrow size for visibility Marcel 2026-04-01 09:35:30 +02:00
  • c64abccf63 feat(i18n): add doc_panel_annotate_hint message key in de/en/es, use in AnnotateHintStrip Marcel 2026-04-01 09:30:21 +02:00
  • 47960b5028 feat(topbar): scale action button text and icons to match surrounding text size Marcel 2026-04-01 09:23:31 +02:00
  • 7f2940f0f2 feat(topbar): increase all font sizes and bar height by another 25% Marcel 2026-04-01 09:12:27 +02:00
  • 37d728b006 feat(topbar): increase all font sizes and bar height by 25% for legibility Marcel 2026-04-01 09:09:59 +02:00
  • 965087b787 Revert "feat(topbar): double all font sizes and increase bar height for legibility" Marcel 2026-04-01 09:04:24 +02:00
  • 1d2e6d7b86 feat(topbar): double all font sizes and increase bar height for legibility Marcel 2026-04-01 08:52:23 +02:00
  • 0c40e10743 fix(topbar): add role=group to OverflowPillButton outer div — a11y warning Marcel 2026-03-31 23:17:11 +02:00
  • 358131ca34 feat(ui): replace DocumentTopBar with responsive orchestrator (issue #173) Marcel 2026-03-31 23:11:11 +02:00
  • c7af33b998 feat(ui): add OverflowPillButton — tooltip, Escape focus return, use:clickOutside Marcel 2026-03-31 23:08:53 +02:00
  • eafb566170 feat(ui): add PersonChipRow — sender→receivers chips, 2nd receiver hidden md:contents Marcel 2026-03-31 23:00:32 +02:00
  • 624eb9e5d6 feat(ui): add OverflowPillDisplay — non-interactive aria-hidden +N span Marcel 2026-03-31 22:58:47 +02:00
  • 7bd995a045 feat(ui): add AnnotateHintStrip — 18px hint strip, hidden md:flex, annotateMode gated Marcel 2026-03-31 22:46:32 +02:00
  • 20dbe04d45 feat(ui): add DocumentStatusChip — dot-only status indicator, hidden md:block Marcel 2026-03-31 22:43:15 +02:00
  • c9211b3061 feat(ui): add PersonChip component — avatar initials, abbreviated prop Marcel 2026-03-31 22:42:01 +02:00
  • 27254fb0ac feat(utils): add personFormat utility module with 6 pure functions (TDD) Marcel 2026-03-31 22:39:44 +02:00
  • b5a68e69e2 refactor(actions): extract clickOutside to shared module, replace 5 inline copies Marcel 2026-03-31 22:34:54 +02:00
  • b1e959412f feat(frontend): add xs breakpoint (375px) to Tailwind @theme Marcel 2026-03-31 22:02:46 +02:00
  • 19035fbeab fix(dashboard): move right column first in DOM for mobile-first upload zone Marcel 2026-03-31 20:42:37 +02:00
  • 79faee554a fix(dashboard): reduce incomplete docs widget from 5 to 3 items to prevent scroll Marcel 2026-03-31 20:40:02 +02:00
  • 5adef7bec5 refactor(dashboard): delete DashboardMentions component — notifications page exists Marcel 2026-03-31 20:29:03 +02:00
  • 595c2eb987 test(e2e): Classic Split — right column absent for read-only user, present for admin Marcel 2026-03-31 20:27:39 +02:00
  • 518019f099 chore(e2e): gitignore Playwright auth state — regenerate in CI via auth.setup.ts Marcel 2026-03-31 20:26:01 +02:00
  • 38b8804b17 style(dashboard): bump stats footnote from text-xs to text-sm for legibility Marcel 2026-03-31 20:24:47 +02:00
  • 81ed1ce3ed test(admin): replace setTimeout timing hack with vi.waitFor in layout specs Marcel 2026-03-31 20:23:05 +02:00
  • 92e7aa127c feat(dashboard): Classic Split — 2-col layout, remove DashboardMentions widget Marcel 2026-03-31 19:36:36 +02:00
  • f618364632 feat(dashboard): add stats footnote and min-h touch target to DashboardRecentDocuments Marcel 2026-03-31 19:29:00 +02:00
  • 20923d04b6 feat(dashboard): replace notifications fetch with stats in server load Marcel 2026-03-31 19:23:31 +02:00
  • 6d61297182 fix(tests): fix 27 failing frontend unit tests Marcel 2026-03-31 17:28:35 +02:00
  • fb636e4152 fix(e2e): replace fragile .last() selector with data-testid on password form submit Marcel 2026-03-31 17:13:09 +02:00
  • 527d174e9c fix(focus-rings): remove broken [&_input]:focus selectors and fix error state focus-visible Marcel 2026-03-31 16:42:11 +02:00
  • f1bf32ee05 feat(focus-rings): CommentThread selection highlight → dotted outline Marcel 2026-03-31 15:27:48 +02:00
  • a5cc8fd16e feat(focus-rings): update interactive widgets to ring-focus-ring Marcel 2026-03-31 15:25:02 +02:00
  • 1541afd470 feat(focus-rings): update all form inputs and document components to ring-focus-ring Marcel 2026-03-31 15:22:11 +02:00
  • d0deb26065 feat(focus-rings): update auth and search inputs to ring-focus-ring Marcel 2026-03-31 15:18:42 +02:00
  • f04e4ffa8b feat(focus-rings): update header/nav components to ring-focus-ring Marcel 2026-03-31 15:15:06 +02:00
  • 17889df220 feat(focus-rings): add --c-focus-ring token to CSS design system Marcel 2026-03-31 15:12:00 +02:00
  • fe1121de65 test(focus-rings): add failing Playwright tests for --c-focus-ring token and element ring colors Marcel 2026-03-31 15:08:36 +02:00
  • 2004a80055 fix(a11y): UserMenu avatar bg-white/text-brand-navy — WCAG AA contrast Marcel 2026-03-31 14:07:55 +02:00
  • f70b5ae6bd fix(dark-mode): address PR #168 review blockers Marcel 2026-03-31 13:30:00 +02:00
  • 12b8324245 chore: merge main into feat/issue-166 — resolve blue header conflicts Marcel 2026-03-31 12:24:20 +02:00
  • a9b648454e fix(dark-mode): use bg-header on layout header; set --c-header to brand-navy Marcel 2026-03-31 11:53:14 +02:00
  • 938a4b07bf test(dark-mode): add failing test for --c-header token on header element Marcel 2026-03-31 11:39:37 +02:00
  • 7e43bd43a4 feat(dark-mode): replace neutral tokens with navy-tinted palette + fix WCAG AA Marcel 2026-03-31 11:37:30 +02:00
  • 56926efd03 test(a11y): add dark mode axe + color-scheme tests for issue #166 Marcel 2026-03-31 11:22:35 +02:00
  • a6ee444f3b docs(specs): add focus rings design spec for issue #167 Marcel 2026-03-31 10:33:50 +02:00
  • 2dd73cf594 test(LanguageSwitcher): add Vitest unit tests for inverted prop Marcel 2026-03-31 09:43:29 +02:00
  • 53038dea68 fix(header): address PR review blockers Marcel 2026-03-31 09:37:24 +02:00
  • 281934529e fix(header): consistent icon styling, focus rings, and responsive breakpoints Marcel 2026-03-30 22:54:04 +02:00
  • c905f136d2 test(header): add Playwright tests for brand-navy header Marcel 2026-03-30 22:03:38 +02:00
  • 36bf591afe feat(forgot-password): add AuthHeader for consistent auth page branding Marcel 2026-03-30 22:02:29 +02:00
  • 550a9704ad feat(login): replace floating lang switcher with AuthHeader Marcel 2026-03-30 22:01:40 +02:00
  • 55e681c209 feat(AuthHeader): slim brand-navy header for auth pages Marcel 2026-03-30 22:01:02 +02:00
  • e65ddc655e feat(UserMenu): brand-mint avatar, white guest icon, focus rings Marcel 2026-03-30 22:00:22 +02:00
  • 14b1cc7539 feat(AppNav): brand-navy header styles for logo and nav links Marcel 2026-03-30 21:59:38 +02:00
  • adc1f343b2 feat(layout): apply brand-navy header with accent strip Marcel 2026-03-30 21:57:39 +02:00
  • 3dfaf69fb1 feat(LanguageSwitcher): add inverted prop for dark-header context Marcel 2026-03-30 21:57:01 +02:00
  • fd2a7a8e96 refactor(layout): remove --c-nav-active CSS token Marcel 2026-03-30 21:55:48 +02:00
  • ebeb0cf865 chore: merge origin/main into feat/issue-162-korrespondenz-redesign feat/issue-162-korrespondenz-redesign Marcel 2026-03-30 21:34:00 +02:00
  • 46eb908ff4 fix(DateInput): fire onchange when field is cleared Marcel 2026-03-30 21:22:43 +02:00
  • 616d6ba01c fix(korrespondenz): use semantic tokens in SinglePersonHintBar for dark mode Marcel 2026-03-30 20:00:20 +02:00
  • 154f859efc feat(korrespondenz): address PR #164 review – blockers and suggestions Marcel 2026-03-30 19:57:48 +02:00
  • 591316aa22 feat(admin): add READ_ALL and ANNOTATE_ALL to groups permission matrix Marcel 2026-03-30 10:12:48 +02:00
  • 89f2106d8b feat(admin): mass import card on system tab with live status polling Marcel 2026-03-30 09:42:44 +02:00
  • 33c29fbff3 feat(admin): entity flyout for tablet icon strip (Phase 9 complete) Marcel 2026-03-30 09:06:03 +02:00
  • 757d0493a0 feat(admin): responsive entity nav and collapsible list panels (Phase 9) Marcel 2026-03-30 07:19:41 +02:00
  • 50e637a9f2 feat(admin): phase 8 — unsaved-changes guard on all detail panels Marcel 2026-03-30 01:58:10 +02:00