From 9870d1e6a97daa290c58c7852b0a9ba113606d98 Mon Sep 17 00:00:00 2001 From: Thomas des Francs Date: Thu, 25 Jun 2026 16:22:17 +0200 Subject: [PATCH] Fix source icon SVG ID collisions (#22177) ## Summary Fixes the Gmail and Google Calendar source icons by replacing document-global generic SVG IDs (`a`, `b`, `c`, etc.) with icon-specific IDs. This prevents inline SVG gradients, masks, and filters from resolving against another icon instance when the icons render together in the record table actor/source column. ## Root cause The Gmail and Google Calendar SVG assets both used generic IDs. Browser SVG fragment references are document-global for inline SVG, so whichever icon appears first can hijack the other icon's `url(#...)` references. That made the Calendar icon pick up Gmail gradients, and could also affect Gmail depending on DOM order. ## Before Before icon collision screenshot ## After After icon collision screenshot ## Validation - Rendered Gmail + Calendar in both DOM orders via a local browser fixture. - Verified the before fixture had 14 generic SVG IDs and the after fixture had 0. - Verified 4 SVGs rendered, no cross-icon URL reference problems, and no browser console warnings/errors. - Ran `xmllint --noout packages/twenty-ui/src/assets/icons/gmail.svg packages/twenty-ui/src/assets/icons/google-calendar.svg`. - Ran `rg -n "id=\"[a-z]\"|url\(#[a-z]\)|mask=\"url\(#[a-z]\)\"|filter=\"url\(#[a-z]\)\"" packages/twenty-ui/src/assets/icons -S` and confirmed no matches. `yarn nx build twenty-ui` could not run in this worktree because `node_modules` is missing, and Yarn reports: `Couldn't find the node_modules state file`. --- packages/twenty-ui/src/assets/icons/gmail.svg | 8 ++++---- .../src/assets/icons/google-calendar.svg | 18 +++++++++--------- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/packages/twenty-ui/src/assets/icons/gmail.svg b/packages/twenty-ui/src/assets/icons/gmail.svg index 3b690353bb..3e84160809 100644 --- a/packages/twenty-ui/src/assets/icons/gmail.svg +++ b/packages/twenty-ui/src/assets/icons/gmail.svg @@ -1,9 +1,9 @@ - + - + - + @@ -11,7 +11,7 @@ - + diff --git a/packages/twenty-ui/src/assets/icons/google-calendar.svg b/packages/twenty-ui/src/assets/icons/google-calendar.svg index 5486a4bca2..29f373c30e 100644 --- a/packages/twenty-ui/src/assets/icons/google-calendar.svg +++ b/packages/twenty-ui/src/assets/icons/google-calendar.svg @@ -1,29 +1,29 @@ - + - - + + - + - - + + - + - + - +