Skip to content

Commit d46f36f

Browse files
authored
Merge pull request #308 from Obiajulu-gif/issue-275-profile-tab-focus-visible
Align profile tab focus visible ring
2 parents 8c1904a + cb1d61e commit d46f36f

2 files changed

Lines changed: 24 additions & 1 deletion

File tree

src/components/common/ProfileTabPill.tsx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ import { cva, type VariantProps } from 'class-variance-authority';
33
import { cn } from '@/lib/utils';
44

55
const profileTabPillVariants = cva(
6-
'inline-flex items-center gap-1.5 rounded-full border px-3.5 py-1.5 text-xs font-semibold font-jakarta tracking-wide transition-all duration-200 outline-none focus-visible:ring-2 focus-visible:ring-amber-400/50 focus-visible:ring-offset-1 focus-visible:ring-offset-transparent',
6+
'inline-flex items-center gap-1.5 rounded-full border px-3.5 py-1.5 text-xs font-semibold font-jakarta tracking-wide transition-all duration-200 outline-none focus-visible:border-ring focus-visible:ring-[3px] focus-visible:ring-ring/50 focus-visible:ring-offset-2 focus-visible:ring-offset-background',
77
{
88
variants: {
99
state: {

src/components/common/__tests__/ProfileTabPillGroup.test.tsx

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -170,4 +170,27 @@ describe('ProfileTabPillGroup – hash routing enabled', () => {
170170
);
171171
}
172172
});
173+
174+
it('uses the project focus-visible ring for keyboard tab focus', () => {
175+
const onTabChange = vi.fn();
176+
render(
177+
<ProfileTabPillGroup
178+
tabs={TABS}
179+
activeTab="overview"
180+
onTabChange={onTabChange}
181+
enableHashRouting
182+
/>
183+
);
184+
185+
const tab = screen.getByRole('tab', { name: 'Overview' });
186+
187+
expect(tab).toHaveClass(
188+
'focus-visible:border-ring',
189+
'focus-visible:ring-[3px]',
190+
'focus-visible:ring-ring/50',
191+
'focus-visible:ring-offset-2',
192+
'focus-visible:ring-offset-background'
193+
);
194+
expect(tab.className).not.toContain('focus:ring-');
195+
});
173196
});

0 commit comments

Comments
 (0)