feat(conversations): filter person typeahead to correspondents of selected person
All checks were successful
CI / E2E Tests (push) Successful in 18m17s
CI / Unit & Component Tests (push) Successful in 3m37s
CI / Backend Unit Tests (push) Successful in 2m15s
CI / Unit & Component Tests (pull_request) Successful in 2m12s
CI / Backend Unit Tests (pull_request) Successful in 2m1s
CI / E2E Tests (pull_request) Successful in 15m17s
All checks were successful
CI / E2E Tests (push) Successful in 18m17s
CI / Unit & Component Tests (push) Successful in 3m37s
CI / Backend Unit Tests (push) Successful in 2m15s
CI / Unit & Component Tests (pull_request) Successful in 2m12s
CI / Backend Unit Tests (pull_request) Successful in 2m1s
CI / E2E Tests (pull_request) Successful in 15m17s
Closes #29 Backend: - Add PersonRepository.findCorrespondents / findCorrespondentsWithFilter (native SQL, orders by shared document count DESC, limit 10) - Add PersonService.findCorrespondents(personId, q) delegating to the correct repository method based on whether a query string is present - Expose GET /api/persons/{id}/correspondents?q= in PersonController Frontend: - Add optional restrictToCorrespondentsOf prop to PersonTypeahead - On focus with the prop set, fetch correspondents immediately (no typing required) — opens the dropdown showing top correspondents - On input with the prop set, hit the correspondents endpoint with q= param - Without the prop, keep existing /api/persons?q= behaviour unchanged - Wire the prop bidirectionally in /conversations: sender restricts receiver and vice versa Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit was merged in pull request #42.
This commit is contained in:
@@ -60,6 +60,7 @@ function toggleSort() {
|
||||
label={m.conv_label_person_a()}
|
||||
bind:value={senderId}
|
||||
initialName={data.initialValues.senderName}
|
||||
restrictToCorrespondentsOf={receiverId || undefined}
|
||||
onchange={() => applyFilters()}
|
||||
/>
|
||||
</div>
|
||||
@@ -73,6 +74,7 @@ function toggleSort() {
|
||||
label={m.conv_label_person_b()}
|
||||
bind:value={receiverId}
|
||||
initialName={data.initialValues.receiverName}
|
||||
restrictToCorrespondentsOf={senderId || undefined}
|
||||
onchange={() => applyFilters()}
|
||||
/>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user