-
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