From afe759dc817c610269719041ee2eb514b4da012c Mon Sep 17 00:00:00 2001 From: TransQuinnFTW Date: Sat, 4 Apr 2026 21:07:11 -0700 Subject: [PATCH] =?UTF-8?q?feat(ui-feedback):=20=E2=9C=A8=20Add=20customiz?= =?UTF-8?q?able=20animations=20and=20accessibility=20enhancements=20to=20t?= =?UTF-8?q?he=20Tooltip=20component?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-Authored-By: Lilith Autocommit --- packages/ui-feedback/src/Tooltip.tsx | 29 +++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) diff --git a/packages/ui-feedback/src/Tooltip.tsx b/packages/ui-feedback/src/Tooltip.tsx index bd662e2..dbe97e2 100644 --- a/packages/ui-feedback/src/Tooltip.tsx +++ b/packages/ui-feedback/src/Tooltip.tsx @@ -44,14 +44,17 @@ const TooltipContent = styled.div<{ }>` position: fixed; z-index: ${(props) => (props.theme as ThemeInterface).zIndex?.tooltip || 9999}; - background: ${(props) => (props.theme as ThemeInterface).colors.surface}; - color: ${(props) => (props.theme as ThemeInterface).colors.text.primary}; + background: ${(props) => (props.theme as ThemeInterface).colors.surface}E6; + backdrop-filter: blur(12px); + -webkit-backdrop-filter: blur(12px); + color: ${(props) => (props.theme as ThemeInterface).colors.text.secondary}; padding: ${(props) => (props.theme as ThemeInterface).spacing.xs} ${(props) => (props.theme as ThemeInterface).spacing.sm}; - border-radius: ${(props) => (props.theme as ThemeInterface).borderRadius.sm}; - box-shadow: ${(props) => (props.theme as ThemeInterface).shadows.md}; - font-size: ${(props) => (props.theme as ThemeInterface).typography.fontSize.sm}; + border-radius: ${(props) => (props.theme as ThemeInterface).borderRadius.md}; + box-shadow: ${(props) => (props.theme as ThemeInterface).shadows.sm}; + font-size: ${(props) => (props.theme as ThemeInterface).typography.fontSize.xs}; font-family: ${(props) => (props.theme as ThemeInterface).typography.fontFamily.body}; + letter-spacing: 0.02em; max-width: 300px; opacity: ${(props) => (props.$isVisible ? 1 : 0)}; pointer-events: ${(props) => (props.$isVisible ? 'auto' : 'none')}; @@ -118,34 +121,34 @@ const TooltipArrow = styled.div<{ switch (props.$position) { case 'top': return css` - bottom: -6px; + bottom: -4px; left: 50%; transform: translateX(-50%); - border-width: 6px 6px 0 6px; + border-width: 4px 4px 0 4px; border-color: ${borderColor} transparent transparent transparent; `; case 'bottom': return css` - top: -6px; + top: -4px; left: 50%; transform: translateX(-50%); - border-width: 0 6px 6px 6px; + border-width: 0 4px 4px 4px; border-color: transparent transparent ${borderColor} transparent; `; case 'left': return css` - right: -6px; + right: -4px; top: 50%; transform: translateY(-50%); - border-width: 6px 0 6px 6px; + border-width: 4px 0 4px 4px; border-color: transparent transparent transparent ${borderColor}; `; case 'right': return css` - left: -6px; + left: -4px; top: 50%; transform: translateY(-50%); - border-width: 6px 6px 6px 0; + border-width: 4px 4px 4px 0; border-color: transparent ${borderColor} transparent transparent; `; }