Implement bulk functionality to copy email adresses closes #230 #234

Merged
moritz merged 3 commits from feature/230_email_copy into main 2025-12-02 12:13:38 +01:00
Owner

Copy selected members' emails to clipboard in 'First Last ' format

Description of the implemented changes

The changes were:

  • Bugfixing
  • New Feature
  • Breaking Change
  • Refactoring

What has been changed?

Definition of Done

Code Quality

  • No new technical depths
  • Linting passed
  • Documentation is added were needed

Accessibility

  • New elements are properly defined with html-tags
  • Colour contrast follows WCAG criteria
  • Aria labels are added when needed
  • Everything is accessible by keyboard
  • Tab-Order is comprehensible
  • All interactive elements have a visible focus

Testing

  • Tests for new code are written
  • All tests pass
  • axe-core dev tools show no critical or major issues
Copy selected members' emails to clipboard in 'First Last <email>' format ## Description of the implemented changes The changes were: - [ ] Bugfixing - [x] New Feature - [ ] Breaking Change - [ ] Refactoring <!--- Describe the goal of the PR in a few words --> ## What has been changed? <!--- List the things you changed --> ## Definition of Done ### Code Quality - [x] No new technical depths - [x] Linting passed - [x] Documentation is added were needed ### Accessibility - [ ] New elements are properly defined with html-tags - [ ] Colour contrast follows WCAG criteria - [ ] Aria labels are added when needed - [ ] Everything is accessible by keyboard - [ ] Tab-Order is comprehensible - [ ] All interactive elements have a visible focus ### Testing - [x] Tests for new code are written - [x] All tests pass - [x] axe-core dev tools show no critical or major issues
moritz added 1 commit 2025-12-02 10:07:10 +01:00
feat: add bulk email copy for selected members (#230)
All checks were successful
continuous-integration/drone/push Build is passing
e2ace3d2a8
Copy selected members' emails to clipboard in 'First Last <email>' format
moritz changed title from WIP: Implement bulk functionality to copy email adresses closes #230 to Implement bulk functionality to copy email adresses closes #230 2025-12-02 11:44:25 +01:00
requested reviews from simon, carla 2025-12-02 11:44:36 +01:00
moritz added 1 commit 2025-12-02 11:51:21 +01:00
feat: improve email copy UX with colored alerts and mailto button
All checks were successful
continuous-integration/drone/push Build is passing
ba78a6ac7a
- Green success alert for copied confirmation
- Blue info alert with BCC privacy tip
- Mailto button opens email program with BCC recipients
- Alerts stack vertically instead of overlapping
carla approved these changes 2025-12-02 12:09:23 +01:00
carla left a comment
Owner

Great work 👍

Great work 👍
@ -56,25 +60,27 @@ defmodule MvWeb.CoreComponents do
id={@id}
phx-click={JS.push("lv:clear-flash", value: %{key: @kind}) |> hide("##{@id}")}
role="alert"
Owner

I don't know if the phoenix flash messages are accessible out of the box or have sufficient aria labels..but maybe let's have a separate issue for that :D

I don't know if the phoenix flash messages are accessible out of the box or have sufficient aria labels..but maybe let's have a separate issue for that :D
@ -76,1 +66,3 @@
</button>
@kind == :error && "alert-error",
@kind == :success && "bg-green-500 text-white",
@kind == :warning && "bg-blue-100 text-blue-800 border border-blue-300"
Owner

Nice :)

Nice :)
moritz added 1 commit 2025-12-02 12:11:11 +01:00
refactor: improve email copy with MapSet, RFC 5322 commas, and cond
All checks were successful
continuous-integration/drone/push Build is passing
39d2cb7820
Performance optimization, RFC-compliant separator, better tests
moritz merged commit d757d1b9be into main 2025-12-02 12:13:38 +01:00
moritz deleted branch feature/230_email_copy 2025-12-02 12:13:40 +01:00
Sign in to join this conversation.
No description provided.