Skip to content

Commit 8d72150

Browse files
committed
fix(fuselage): Tabs divider and state colors
1 parent ee956fd commit 8d72150

File tree

3 files changed

+20
-19
lines changed

3 files changed

+20
-19
lines changed

packages/fuselage/src/components/Tabs/Tabs.stories.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -55,8 +55,8 @@ SelectedAndDisabled.args = {
5555
selected: true,
5656
};
5757

58-
export const Underline: ComponentStory<typeof Tabs> = Template.bind({});
59-
Underline.args = {
58+
export const NoUnderline: ComponentStory<typeof Tabs> = Template.bind({});
59+
NoUnderline.args = {
6060
selected: true,
61-
underline: true,
61+
divider: false,
6262
};

packages/fuselage/src/components/Tabs/Tabs.styles.scss

+14-13
Original file line numberDiff line numberDiff line change
@@ -4,8 +4,10 @@
44

55
$tabs-background-color: theme('tabs-background-color', transparent);
66
$tabs-border-color: theme('tabs-border-color', transparent);
7-
$tabs-color: theme('tabs-color', colors.font(secondary-info));
8-
$tabs-hover-color: theme('tabs-hover-border-color', colors.font(titles-labels));
7+
$tabs-color: theme('tabs-color', colors.font(annotation));
8+
9+
$tabs-hover-color: theme('tabs-hover-border-color', colors.font(hint));
10+
911
$tabs-selected-color: theme(
1012
'tabs-selected-color',
1113
colors.button(primary-default)
@@ -23,6 +25,7 @@ $tabs-hover-selected-border-color: theme(
2325
colors.button(primary-hover)
2426
);
2527
$tabs-active-color: theme('tabs-active-color', colors.font(titles-labels));
28+
2629
$tabs-active-selected-color: theme(
2730
'tabs-active-selected-color',
2831
colors.button(primary-press)
@@ -97,11 +100,15 @@ $tabs-disabled-selected-border-color: theme(
97100
&.hover,
98101
&:hover {
99102
color: $tabs-hover-color;
103+
border-block-end-color: $tabs-hover-color;
104+
border-block-end-width: lengths.border-width(4);
100105
}
101106

102107
&.active,
103108
&:active {
104109
color: $tabs-active-color;
110+
border-block-end-color: $tabs-active-color;
111+
border-block-end-width: lengths.border-width(4);
105112
}
106113

107114
@include on-focus-visible {
@@ -129,14 +136,14 @@ $tabs-disabled-selected-border-color: theme(
129136
border-block-end-width: lengths.border-width(2);
130137
border-inline-width: lengths.border-width(2);
131138

132-
&:hover:not(.rcx-tabs__item--selected--disabled) {
139+
&:hover:not(.rcx-tabs__item--selected--disabled),
140+
&.hover:not(.rcx-tabs__item--selected--disabled) {
133141
color: $tabs-hover-selected-color;
134142
border-block-end-color: $tabs-hover-selected-border-color;
135-
border-block-end-width: lengths.border-width(4);
136143
}
137144

138-
&.active,
139-
&:active {
145+
&.active:not(.rcx-tabs__item--selected--disabled),
146+
&:active:not(.rcx-tabs__item--selected--disabled) {
140147
color: $tabs-active-selected-color;
141148
border-block-end-color: $tabs-active-selected-border-color;
142149
}
@@ -161,18 +168,12 @@ $tabs-disabled-selected-border-color: theme(
161168

162169
display: flex;
163170

164-
&--underline {
171+
&--with-divider {
165172
border-block-end: lengths.border-width(2) solid colors.stroke(light);
166173

167174
.rcx-tabs__item {
168175
margin-block-end: lengths.margin(-2);
169-
170-
border-width: 0;
171176
border-block-width: lengths.border-width(2);
172-
173-
&:first-child {
174-
margin-inline-start: lengths.margin(-12);
175-
}
176177
}
177178
}
178179
}

packages/fuselage/src/components/Tabs/Tabs.tsx

+3-3
Original file line numberDiff line numberDiff line change
@@ -4,11 +4,11 @@ import React from 'react';
44
import Box from '../Box';
55
import { TabsItem } from './TabsItem';
66

7-
type TabsProps = ComponentProps<typeof Box> & { underline?: boolean };
7+
type TabsProps = ComponentProps<typeof Box> & { divider?: boolean };
88

9-
export function Tabs({ children, underline = true, ...props }: TabsProps) {
9+
export function Tabs({ children, divider = true, ...props }: TabsProps) {
1010
return (
11-
<Box is='div' rcx-tabs rcx-tabs--underline={underline} {...props}>
11+
<Box is='div' rcx-tabs rcx-tabs--with-divider={divider} {...props}>
1212
<Box is='div' rcx-tabs__scroll-box>
1313
<Box is='div' rcx-tabs__wrapper children={children} role='tablist' />
1414
</Box>

0 commit comments

Comments
 (0)