-
fc118f7032
fix(bulk-upload): skip navigation when any chunk fails to upload
Marcel
2026-04-24 21:18:17 +02:00
-
4229e952fb
fix(bulk-upload): include tagNames in quick-upload metadata payload
Marcel
2026-04-24 21:12:02 +02:00
-
e1259215ef
test(bulk-upload): add save-error and discard-all coverage to BulkDocumentEditLayout spec
Marcel
2026-04-24 20:41:14 +02:00
-
f06d034b36
fix(bulk-upload): i18n hardcoded strings in BulkDropZone and FileSwitcherStrip
Marcel
2026-04-24 20:38:39 +02:00
-
a6cd10f219
refactor(documents): extract applyBatchMetadata private helper in DocumentService
Marcel
2026-04-24 20:30:15 +02:00
-
b8e6fe9ec9
refactor(documents): change DocumentBatchMetadataDTO.tags from String to List<String> tagNames
Marcel
2026-04-24 20:28:12 +02:00
-
763f1990cd
refactor(documents): move batch validation from controller into DocumentService
Marcel
2026-04-24 20:25:17 +02:00
-
ca62f50921
fix(forms): remove autofocus from WhoWhenSection entirely
Marcel
2026-04-24 19:51:15 +02:00
-
61f84a86ac
fix(forms): apply py-3 to location input for consistent 44px height
Marcel
2026-04-24 19:48:47 +02:00
-
0eb5c95c6c
fix(forms): raise date and sender field height to match receiver (44px)
Marcel
2026-04-24 19:45:03 +02:00
-
d662635392
fix(PersonTypeahead): match height and border-radius of other form inputs
Marcel
2026-04-24 19:38:54 +02:00
-
b00be2548c
fix(PersonMultiSelect): align height and focus ring with other form inputs
Marcel
2026-04-24 19:36:20 +02:00
-
01a8654347
fix(bulk-upload): no layout shift, no autofocus on date field
Marcel
2026-04-24 19:32:23 +02:00
-
c1b221412f
fix(bulk-upload): PDF-only file acceptance
Marcel
2026-04-24 19:29:21 +02:00
-
76c14ea604
fix(bulk-upload): form layout polish and drop zone sizing
Marcel
2026-04-24 19:26:22 +02:00
-
539842e849
fix(bulk-upload): spec-compliant split-panel layout with local PDF preview
Marcel
2026-04-24 19:17:36 +02:00
-
ef7a51fe30
chore(api): regenerate types — adds DocumentBatchMetadataDTO
Marcel
2026-04-24 18:24:16 +02:00
-
ec17cb123a
feat(bulk-upload): wire /documents/new to BulkDocumentEditLayout
Marcel
2026-04-24 17:59:41 +02:00
-
801470093d
feat(bulk-upload): add BulkDocumentEditLayout component with save handler
Marcel
2026-04-24 17:57:33 +02:00
-
af6ba6a9cc
feat(bulk-upload): add UploadSaveBar component + fix bulk_save_cta message
Marcel
2026-04-24 17:49:23 +02:00
-
9acd5ec617
feat(bulk-upload): add ScopeCard component
Marcel
2026-04-24 17:43:10 +02:00
-
29a44b3cd1
feat(bulk-upload): add FileSwitcherStrip component
Marcel
2026-04-24 17:40:33 +02:00
-
5fe289b06b
feat(bulk-upload): add BulkDropZone component
Marcel
2026-04-24 16:40:04 +02:00
-
f76af8c678
feat(bulk-upload): add bulkTitleFromFilename utility
Marcel
2026-04-24 16:30:12 +02:00
-
69c739c6e3
feat(i18n): add BATCH_TOO_LARGE error code + 16 bulk-upload Paraglide keys
Marcel
2026-04-24 16:18:51 +02:00
-
43cf022f05
feat(documents): extend quick-upload with optional batch metadata part
Marcel
2026-04-24 16:01:21 +02:00
-
48d034dcb8
fix(transcribe-coach): propagate hover from 44px button group to inner span
Marcel
2026-04-25 11:52:11 +02:00
-
c335ddd686
test(e2e): add training footer positive-case test and fix broken selectors
Marcel
2026-04-25 10:22:52 +02:00
-
7830a749a0
docs(richtlinien): shorten prerender comment to essentials
Marcel
2026-04-25 09:02:51 +02:00
-
5b7c37391c
test(HelpPopover): use userEvent.keyboard for Enter/Space tests
Marcel
2026-04-25 09:01:41 +02:00
-
ce72b07197
test(e2e): fix locators, add print assertion, cleanup, remove redundant emulateMedia
Marcel
2026-04-25 01:25:24 +02:00
-
505804c893
chore(i18n): remove dead transcription_empty_draw_hint key
Marcel
2026-04-25 01:23:54 +02:00
-
67421a4c0c
docs(richtlinien): document why prerender=true is auth-safe
Marcel
2026-04-25 01:22:33 +02:00
-
0ea0df4f72
fix(richtlinien): <main> landmark + closing card h2 → h3
Marcel
2026-04-25 01:21:29 +02:00
-
077f5c85df
fix(TranscribeCoachEmptyState): Tailwind grid instead of inline styles; step aria-labels
Marcel
2026-04-25 01:19:42 +02:00
-
018e272a3b
fix(RichtlinienRuleCard): bg-[#FAF8F1] → bg-parchment design token
Marcel
2026-04-25 01:17:06 +02:00
-
0c4a0ead7b
fix(TranscribeDragDemo): reactive prefersReducedMotion + bg-parchment token
Marcel
2026-04-25 01:16:00 +02:00
-
82b12d4383
fix(HelpPopover): role=region, 44px touch target, counter-based ID
Marcel
2026-04-25 01:06:52 +02:00
-
01758e8e00
feat(tokens): add --color-parchment design token for warm example-block surfaces
Marcel
2026-04-25 01:03:43 +02:00
-
1fca1f80a2
docs(bulk-upload): explain chunkSize=10 and 50-file cap constants
Marcel
2026-04-25 11:31:59 +02:00
-
46dae8a826
feat(bulk-upload): guard discard-all with confirm dialog
Marcel
2026-04-25 11:26:05 +02:00
-
e5fe2fc5c6
fix(bulk-upload): add gradient overflow indicators to chip strip
Marcel
2026-04-25 11:17:05 +02:00
-
0ab85d888b
fix(bulk-upload): chip readability and focus management in FileSwitcherStrip
Marcel
2026-04-25 11:14:31 +02:00
-
48c82aa07b
fix(bulk-upload): handle network errors and partial upload success
Marcel
2026-04-25 11:09:49 +02:00
-
1299f191e2
feat(bulk-upload): guard save() against concurrent invocations
Marcel
2026-04-25 11:03:58 +02:00
-
9aed929b67
fix(bulk-upload): raise discard button touch target to 44px for WCAG compliance
Marcel
2026-04-25 09:13:55 +02:00
-
cb9962f0c2
test(bulk-upload): add positive navigation assertion for successful save
Marcel
2026-04-25 09:12:21 +02:00
-
262c792654
fix(bulk-upload): correct stale DocumentBatchMetadataDTO type in api.ts
Marcel
2026-04-25 09:10:29 +02:00
-
60f1db1f99
fix(bulk-upload): announce error chip status to screen readers
Marcel
2026-04-25 09:08:10 +02:00
-
8cf4f7c2e4
test(bulk-upload): fix ScopeCard spec assertions to match actual component classes
Marcel
2026-04-25 09:03:57 +02:00
-
6b10daeeac
fix(bulk-upload): accessibility improvements and fetch comment
Marcel
2026-04-25 01:25:03 +02:00
-
74b473e3d7
fix(bulk-upload): match error chips by filename, not by chunk position
Marcel
2026-04-25 01:15:41 +02:00
-
f1b3e8c2d8
fix(i18n): remove orphaned merge conflict markers from message files
Marcel
2026-04-25 01:07:44 +02:00
-
c78a1d69dc
test(bulk-upload): add unit tests for storeDocumentWithBatchMetadata
Marcel
2026-04-24 21:40:17 +02:00
-
5131c8da31
fix(bulk-upload): truncate long chip titles with tooltip in FileSwitcherStrip
Marcel
2026-04-24 21:30:38 +02:00
-
eb106c9ca7
fix(bulk-upload): enlarge scroll button touch targets to 44×44px
Marcel
2026-04-24 21:26:49 +02:00
-
e742c36ef6
fix(bulk-upload): populate aria-live region with active file title
Marcel
2026-04-24 21:25:06 +02:00
-
9ac01f7cc2
fix(bulk-upload): add aria-label to progress bar in UploadSaveBar
Marcel
2026-04-24 21:22:49 +02:00
-
a2a7d547ee
fix(bulk-upload): i18n topbar title; replace hardcoded German strings
Marcel
2026-04-24 21:21:07 +02:00
-
3c99030546
fix(bulk-upload): skip navigation when any chunk fails to upload
Marcel
2026-04-24 21:18:17 +02:00
-
f75a960179
fix(bulk-upload): include tagNames in quick-upload metadata payload
Marcel
2026-04-24 21:12:02 +02:00
-
811baf78da
test(bulk-upload): add save-error and discard-all coverage to BulkDocumentEditLayout spec
Marcel
2026-04-24 20:41:14 +02:00
-
43122c20cb
fix(bulk-upload): i18n hardcoded strings in BulkDropZone and FileSwitcherStrip
Marcel
2026-04-24 20:38:39 +02:00
-
f90d4b282e
refactor(documents): extract applyBatchMetadata private helper in DocumentService
Marcel
2026-04-24 20:30:15 +02:00
-
1eb833f333
refactor(documents): change DocumentBatchMetadataDTO.tags from String to List<String> tagNames
Marcel
2026-04-24 20:28:12 +02:00
-
b2264de949
refactor(documents): move batch validation from controller into DocumentService
Marcel
2026-04-24 20:25:17 +02:00
-
dd6331c098
fix(forms): remove autofocus from WhoWhenSection entirely
Marcel
2026-04-24 19:51:15 +02:00
-
9d687ba9f9
fix(forms): apply py-3 to location input for consistent 44px height
Marcel
2026-04-24 19:48:47 +02:00
-
1ea95f8fe0
fix(forms): raise date and sender field height to match receiver (44px)
Marcel
2026-04-24 19:45:03 +02:00
-
65846911f3
fix(PersonTypeahead): match height and border-radius of other form inputs
Marcel
2026-04-24 19:38:54 +02:00
-
75dd8cb08d
fix(PersonMultiSelect): align height and focus ring with other form inputs
Marcel
2026-04-24 19:36:20 +02:00
-
db6a3225db
fix(bulk-upload): no layout shift, no autofocus on date field
Marcel
2026-04-24 19:32:23 +02:00
-
8b05451f42
fix(bulk-upload): PDF-only file acceptance
Marcel
2026-04-24 19:29:21 +02:00
-
aa9c47ecc8
fix(bulk-upload): form layout polish and drop zone sizing
Marcel
2026-04-24 19:26:22 +02:00
-
0e6efc9170
fix(bulk-upload): spec-compliant split-panel layout with local PDF preview
Marcel
2026-04-24 19:17:36 +02:00
-
64dbce2a00
chore(api): regenerate types — adds DocumentBatchMetadataDTO
Marcel
2026-04-24 18:24:16 +02:00
-
a1f9253712
feat(bulk-upload): wire /documents/new to BulkDocumentEditLayout
Marcel
2026-04-24 17:59:41 +02:00
-
3a6a70a1f7
feat(bulk-upload): add BulkDocumentEditLayout component with save handler
Marcel
2026-04-24 17:57:33 +02:00
-
edd96b05fe
feat(bulk-upload): add UploadSaveBar component + fix bulk_save_cta message
Marcel
2026-04-24 17:49:23 +02:00
-
6d5fb9d8c8
feat(bulk-upload): add ScopeCard component
Marcel
2026-04-24 17:43:10 +02:00
-
1f1b7aeab5
feat(bulk-upload): add FileSwitcherStrip component
Marcel
2026-04-24 17:40:33 +02:00
-
22bba5cfcd
feat(bulk-upload): add BulkDropZone component
Marcel
2026-04-24 16:40:04 +02:00
-
4248d8af72
feat(bulk-upload): add bulkTitleFromFilename utility
Marcel
2026-04-24 16:30:12 +02:00
-
f86105a1be
feat(i18n): add BATCH_TOO_LARGE error code + 16 bulk-upload Paraglide keys
Marcel
2026-04-24 16:18:51 +02:00
-
ae445a78ae
feat(documents): extend quick-upload with optional batch metadata part
Marcel
2026-04-24 16:01:21 +02:00
-
-
c3fac5b0ad
feat(#320): guided empty state + Kurrent primer for first-time transcribers
Marcel
2026-04-24 21:42:29 +02:00
-
-
03b180fe88
test(e2e): add transcribe-coach, richtlinien, and help-popover E2E specs; reducedMotion global default
Marcel
2026-04-24 21:39:03 +02:00
-
b234db0472
feat(richtlinien): add /hilfe/transkription page with RichtlinienRuleCard
Marcel
2026-04-24 21:28:25 +02:00
-
7c3a8e7651
feat(transcribe): add HelpPopover primitive and wire (?) chip into panel header
Marcel
2026-04-24 21:19:48 +02:00
-
7fb9d74515
feat(transcribe): copy pass markieren→einrahmen in transcription_next_block_cta
Marcel
2026-04-24 21:08:40 +02:00
-
dff203d526
feat(transcribe): wire coach into TranscriptionEditView, hide training footer when empty
Marcel
2026-04-24 21:06:50 +02:00
-
86584a53a8
feat(transcribe): add TranscribeCoachEmptyState and TranscribeDragDemo components
Marcel
2026-04-24 21:00:01 +02:00
-
-
1d5219eac4
docs(specs): add Transkriptions-Richtlinien spec for #320
Marcel
2026-04-24 18:47:47 +02:00
-
6e021fb23a
fix(briefwechsel): repair 500 by consuming backend thumbnailUrl directly
Marcel
2026-04-24 13:26:13 +02:00
-
bdac5e42ad
test(search): integration test covers paged search against real Postgres — address @saraholt
Marcel
2026-04-24 10:55:51 +02:00
-
18b88672ec
fix(pagination): bound controls render as aria-hidden spans — address @leonievoss
Marcel
2026-04-24 10:52:13 +02:00
-
8fa061187e
refactor(documents): extract buildSearchParams — address @felixbrandt
Marcel
2026-04-24 10:48:34 +02:00
-
610915b2a2
refactor(test): extract UNPAGED Pageable constant — address @felixbrandt + @saraholt
Marcel
2026-04-24 10:46:46 +02:00
-
78ac5d663d
feat(documents): paginate search with a Pagination control
Marcel
2026-04-24 08:34:01 +02:00
-
826c0827dc
test(search): lock pagination behaviour and @Validated rejection
Marcel
2026-04-24 08:26:41 +02:00