fix: use brand icons in report-problem destination toggle#3018
Conversation
Replace Lucide placeholders with GitHub, Discord, and email marks so the destination picker is recognizable at a glance.
codebanditssss
left a comment
There was a problem hiding this comment.
clean and correct. lucide dropped brand icons so inline SVGs are the right way to do this, and keeping them in the single call site is fine.
checked the render site (line 213, not in the diff): className="size-icon-sm" sizes the SVG (the new SVGs have no width/height attrs and rely on the size utility + viewBox to scale), and fill="currentColor" means the marks track the toggle's text color so selected/unselected states read correctly. each SVG hardcodes aria-hidden internally and the label comes from the adjacent {option.label} text, so no a11y regression.
one thing i verified since there's no typecheck check on this PR: passing aria-hidden to a component typed { className?: string } looked like it might be a type error, but i reproduced the exact render pattern against the real project tsc and it passes, so no latent type error.
nit (non-blocking): the call site still passes aria-hidden="true" but the components only read className and already hardcode aria-hidden, so that prop is a dead no-op you could drop.
going monochrome (currentColor) instead of full-color logos was a good call, keeps it consistent with the toggle. approving.
Summary
CircleDot/MessageSquare/Mail) to GitHub, Discord, and email brand marksReportProblemDialog(single call site) and inherit the toggle’scurrentColorTest plan
Before
After