Commit Graph

  • 0cc79cd0fd test(#148): add PersonController, DocumentSpecifications, and PersonRepository tests Marcel 2026-03-28 20:07:03 +01:00
  • 16101240f1 chore: resolve merge conflicts with main Marcel 2026-03-28 19:51:32 +01:00
  • e28cd03953 fix(#147): replace text-ink/60 with text-ink-2 and add accent token guard Marcel 2026-03-28 18:24:45 +01:00
  • b5580b0b24 fix(#147): replace text-accent with text-primary on all text elements Marcel 2026-03-28 18:23:37 +01:00
  • 4c3d253066 test(#147): add axe-core accessibility spec with color-contrast enabled Marcel 2026-03-28 18:22:45 +01:00
  • e7829312e8 fix: use existing doc_file_upload_label key in DropZone aria-label Marcel 2026-03-28 18:12:42 +01:00
  • 2b0f467213 i18n: translate page titles (home, persons, admin, login, error) Marcel 2026-03-28 18:05:48 +01:00
  • 9a4e088de9 fix(#118): resolve wcag2a/wcag2aa violations found by axe-core suite Marcel 2026-03-28 17:29:47 +01:00
  • f9236cc575 test(#118): add axe-core wcag2a/wcag2aa accessibility checks to E2E suite Marcel 2026-03-28 16:37:52 +01:00
  • e27af75e21 test(#121): add @vitest/coverage-v8 with 80% branch coverage gate Marcel 2026-03-28 16:36:08 +01:00
  • 3983771e79 test(#123): add Vitest integration tests for SvelteKit load functions Marcel 2026-03-28 16:31:49 +01:00
  • 25d6ce4711 test(#120): add JaCoCo branch coverage gate to Maven build Marcel 2026-03-28 16:29:09 +01:00
  • 4820360e40 test(#119): add Testcontainers @DataJpaTest against real PostgreSQL 16 Marcel 2026-03-28 16:26:30 +01:00
  • 2fb5e4d17a test(#125): remove demo.spec.ts scaffold leftover Marcel 2026-03-28 16:15:32 +01:00
  • 29f81f48db fix: remove redundant fetchNotifications() from onMount in NotificationBell Marcel 2026-03-28 16:03:11 +01:00
  • 070153a71d fix: allow WRITE_ALL users to post, reply, and edit comments Marcel 2026-03-28 15:52:56 +01:00
  • affee407ef fix: allow WRITE_ALL users to create and delete annotations Marcel 2026-03-28 15:42:26 +01:00
  • 4ff87b035e fix: use bind:group in UserGroupsSection to prevent admin permission loss Marcel 2026-03-28 15:42:03 +01:00
  • f568c0aeb7 feat(#71,#72,#73): SSE push notifications, mention chips, deep-link fixes Marcel 2026-03-28 15:41:35 +01:00
  • 9900d0b54b test: add AnnotationSidePanel spec and fix env mock in layout spec Marcel 2026-03-28 11:46:27 +01:00
  • 9ae6186e66 fix(#72): add mention chip styling for @mention rendering in comments Marcel 2026-03-28 11:45:52 +01:00
  • c21e19a15c fix(#71): disable notification preferences when user has no email address Marcel 2026-03-28 11:45:20 +01:00
  • 7825c7749a fix(#73): open annotation side panel when deep-linking via ?annotationId= Marcel 2026-03-28 11:44:51 +01:00
  • d13422c65a fix(#71,#73): remove class-level permission gate and add annotationId to notifications Marcel 2026-03-28 11:44:17 +01:00
  • 23d0005514 fix: allow any user permission to read/update own notification preferences Marcel 2026-03-28 08:05:15 +01:00
  • dc6ea080c4 fix(#71-#73): address all review findings from Markus and Sara Marcel 2026-03-28 00:31:38 +01:00
  • 2bc3b3fb6c feat(#73): deep-link to specific comments via ?commentId= query param Marcel 2026-03-27 20:37:22 +01:00
  • 55cf1fb0a4 feat(#72): add @mention support in comment editor Marcel 2026-03-27 20:32:54 +01:00
  • e455efa670 feat(#71): add notification bell + preferences UI Marcel 2026-03-27 20:20:58 +01:00
  • 1615a4ffa5 feat(backend): add V17 migration, @mention storage, MentionDTO, user search endpoint, and tests Marcel 2026-03-27 20:09:40 +01:00
  • bc62f3b0af feat(backend): trigger reply notifications from CommentService Marcel 2026-03-27 20:05:29 +01:00
  • 420f50b6d5 feat(backend): add Notification entity, NotificationService, NotificationController, and tests Marcel 2026-03-27 20:03:34 +01:00
  • d91a10ef8e feat(backend): add V16 migration for notifications table and user preference columns Marcel 2026-03-27 19:55:40 +01:00
  • 44f495ca8b fix(touch): enable annotation drawing and hover on touch devices Marcel 2026-03-27 17:05:26 +01:00
  • 74bf49552b refactor: extract LanguageSwitcher into a reusable component Marcel 2026-03-27 17:03:40 +01:00
  • 1de4f8a605 fix(ui): hide logo on mobile+tablet, fix admin tab overflow Marcel 2026-03-27 17:00:56 +01:00
  • f8d888a5be fix(#103): move language switcher from header into mobile nav drawer Marcel 2026-03-27 16:41:51 +01:00
  • 29f0ec8a05 fix(#102): replace native file input in edit form with styled upload zone Marcel 2026-03-27 16:40:23 +01:00
  • 5db17880f9 fix(#101): stop bottom panel from overlapping document viewer Marcel 2026-03-27 16:38:47 +01:00
  • ce02c1bf39 fix(#100): hide action button labels on mobile to prevent toolbar overflow Marcel 2026-03-27 16:36:15 +01:00
  • e1c09ddc7f fix(#99): make document detail tab bar scrollable on narrow screens Marcel 2026-03-27 16:33:47 +01:00
  • 93408c5825 fix(#98): make drop zone border and card borders visible in dark mode Marcel 2026-03-27 16:31:00 +01:00
  • 2a2ce240e1 fix(#97): add px-4 base padding to person directory on mobile Marcel 2026-03-27 16:28:31 +01:00
  • 0bd7a70c96 fix: hide Familienarchiv wordmark below sm breakpoint to save header space Marcel 2026-03-27 16:25:50 +01:00
  • a570dff4e9 fix(#95): stack save bar buttons full-width on mobile to prevent text wrap Marcel 2026-03-27 16:11:47 +01:00
  • fcff7fbdb1 fix(#94): replace text-white with text-primary-fg on all primary buttons Marcel 2026-03-27 15:59:41 +01:00
  • 5cf6947040 fix(#93): migrate hardcoded text-gray-400/500 to semantic ink tokens Marcel 2026-03-27 15:54:55 +01:00
  • d053f6dc40 fix(#92): fix ink-2 and ink-3 contrast to meet WCAG AA across all modes Marcel 2026-03-27 15:51:10 +01:00
  • afebaf4c53 fix(#91): add px-4 base padding and fix admin tab overflow at 320px Marcel 2026-03-27 15:46:20 +01:00
  • 1bfe0ab022 fix(#96): remove off-brand lavender accent bar from all pages Marcel 2026-03-27 12:41:41 +01:00
  • 6ebae19984 feat(#90): add hamburger menu and mobile nav drawer below 640px Marcel 2026-03-27 12:38:52 +01:00
  • 53b482c5f2 fix(e2e): fix admin tag test (use existing tag) and annotation locator feature/68-new-document-file-first Marcel 2026-03-27 11:34:42 +01:00
  • fa9577052d fix(e2e): fix 4 failing e2e tests — strict mode locator and nested form Marcel 2026-03-27 10:04:21 +01:00
  • a7eaa40852 fix(#68): hide native file input, show selected filename in upload zone Marcel 2026-03-27 07:04:54 +01:00
  • c5e28ac18e feat(#68): lead new document form with file upload, all metadata optional Marcel 2026-03-26 22:52:12 +01:00
  • d6f4ea05d9 feat(#68): fall back to filename as title when createDocument gets no title Marcel 2026-03-26 22:51:24 +01:00
  • 065dd8fabd fix(e2e): fix two flaky annotation tests Marcel 2026-03-26 22:32:58 +01:00
  • a967483cd9 fix(e2e): update tests to match current UI and fix panel persistence Marcel 2026-03-26 22:26:03 +01:00
  • 5d0a2a2c9c fix: use semantic color tokens for enrich hint box feat/81-discussion-discoverability Marcel 2026-03-26 19:47:44 +01:00
  • 0f0d74eb2f fix(#81): use text-primary-fg for badge text so dark mode reads correctly Marcel 2026-03-26 19:41:10 +01:00
  • 20f6de4424 refactor(#81): replace nudge button with always-visible count badge Marcel 2026-03-26 18:43:48 +01:00
  • bf82ebfe1d feat(#81): improve discussion discoverability Marcel 2026-03-26 18:19:38 +01:00
  • c6984e49ee fix(dropzone): vertical layout, larger icon, improved copy Marcel 2026-03-26 17:47:08 +01:00
  • 150bc2f171 feat(dropzone): replace upload icon with multi-file icon and clearer hint text Marcel 2026-03-26 17:32:15 +01:00
  • 41c311249b fix(enrich): use fixed positioning for fullscreen layout and fix done icon Marcel 2026-03-26 14:43:26 +01:00
  • 2efa790243 Revert "fix(enrich): restore fixed-position layout and done icon" Marcel 2026-03-26 15:52:47 +01:00
  • 648bdffe4f fix(enrich): restore fixed-position layout and done icon Marcel 2026-03-26 15:51:15 +01:00
  • 99e3163c0e feat(quick-upload): pre-fill date and sender from structured filename Marcel 2026-03-26 15:43:39 +01:00
  • f0940524e7 feat(filename): support compound last names like de Gruyter Marcel 2026-03-26 15:33:21 +01:00
  • a302f96560 feat(quick-upload): generate better title from structured filename Marcel 2026-03-26 15:18:34 +01:00
  • 654e736f8a feat(dropzone): add filename hint showing supported naming pattern Marcel 2026-03-26 15:18:12 +01:00
  • 078bc1c886 feat(new-doc): pre-fill date, sender and title from parsed filename Marcel 2026-03-26 15:17:47 +01:00
  • 8555193a79 feat(filename): add parseFilename utility with full-pattern-only matching Marcel 2026-03-26 15:17:16 +01:00
  • aab9e9a4b0 feat(enrich): add metadata enrichment queue UI Marcel 2026-03-26 13:45:16 +01:00
  • 0ce18e1eed feat(documents): add metadataComplete flag and enrichment queue endpoints Marcel 2026-03-26 13:25:57 +01:00
  • 2bfbf45eba refactor(types): extract shared types to \$lib/types.ts Marcel 2026-03-26 12:47:08 +01:00
  • 40f01a7712 refactor(comments): extract commentEntry snippet to remove duplicated markup Marcel 2026-03-26 12:42:39 +01:00
  • 0db68da00c refactor(persons): extract PersonCard, PersonMergePanel, CoCorrespondentsList, PersonDocumentList Marcel 2026-03-26 12:32:01 +01:00
  • e831de4f85 refactor(home): extract SearchFilterBar, DropZone, and DocumentList Marcel 2026-03-26 12:28:18 +01:00
  • 90e94b350a refactor(conversations): extract filter bar and timeline sub-components Marcel 2026-03-26 12:22:38 +01:00
  • 1facf9cd60 refactor(documents): extract document form sub-components Marcel 2026-03-26 12:20:34 +01:00
  • 25014cce2d refactor(admin/users): extract user form sub-components Marcel 2026-03-26 12:17:55 +01:00
  • 6f71682454 refactor(profile): extract PersonalInfoForm and PasswordChangeForm Marcel 2026-03-26 12:14:20 +01:00
  • af59ed4de4 refactor(admin): split admin page into tab sub-components Marcel 2026-03-26 12:13:06 +01:00
  • d46764ef4f refactor(layout): extract AppNav and UserMenu sub-components Marcel 2026-03-26 12:10:54 +01:00
  • d40d4b21e1 refactor(utils): consolidate date utilities into \$lib/utils/date.ts Marcel 2026-03-26 12:07:46 +01:00
  • 1ea84e4dc8 feat(upload): show progress bar in drop zone during upload Marcel 2026-03-26 11:37:28 +01:00
  • d078ad8224 feat(upload): warn on duplicate filename with link to existing document Marcel 2026-03-26 11:31:31 +01:00
  • 9d5c57b49b fix(dropzone): replace broken degruyter upload icon with inline SVG Marcel 2026-03-26 11:14:37 +01:00
  • 0795e4099f fix(delete): add cascade deletes and fix SvelteKit named action conflict Marcel 2026-03-26 11:12:21 +01:00
  • 1413058ae7 fix(documents): style delete button as red outlined button with inline trash icon Marcel 2026-03-26 11:00:06 +01:00
  • 91a29d501d feat(documents): add delete button to document edit form Marcel 2026-03-26 10:52:43 +01:00
  • 963807ff05 fix(upload): structured error codes for quick-upload, fix duplicate filename crash Marcel 2026-03-26 10:38:30 +01:00
  • 6a663cefe6 fix(search): sort document overview by createdAt DESC instead of documentDate ASC Marcel 2026-03-26 10:32:46 +01:00
  • db103ca1ab fix(test): add invalidateAll to $app/navigation mock in home page spec Marcel 2026-03-26 10:20:03 +01:00
  • 3ec680b812 feat(upload): expand drop zone when dragging file over browser window Marcel 2026-03-26 10:19:34 +01:00
  • 50e3f948c7 fix(upload): use border-ink/20 and primary color for drop zone visibility Marcel 2026-03-26 10:09:17 +01:00
  • bbfef9a22d feat(upload): add drag-and-drop bulk upload zone to home page Marcel 2026-03-26 10:00:19 +01:00
  • 332b5b3c40 feat(upload): add POST /api/documents/quick-upload endpoint for bulk file upload Marcel 2026-03-26 09:59:59 +01:00
  • 29a71f4421 fix(login): remove py-6 padding from layout on auth pages to prevent scrolling Marcel 2026-03-25 13:36:18 +01:00