ant-design/components/button/style/group.tsx

62 lines
1.3 KiB
TypeScript
Raw Normal View History

2022-04-22 22:36:50 +08:00
import type { GenerateStyle } from '../../_util/theme';
import type { ButtonToken } from '.';
const genGroupStyle: GenerateStyle<ButtonToken> = token => {
const { componentCls, fontSizeBase, controlLineWidth, colorPrimaryHover } = token;
return {
[`${componentCls}-group`]: {
position: 'relative',
display: 'inline-flex',
// Border
[`> span, > ${componentCls}`]: {
'&:not(:last-child)': {
[`&, & > ${componentCls}`]: {
borderStartEndRadius: 0,
borderEndEndRadius: 0,
'&:not(:disabled)': {
borderInlineEndColor: colorPrimaryHover,
},
},
},
'&:not(:first-child)': {
marginInlineStart: -controlLineWidth,
[`&, & > ${componentCls}`]: {
borderStartStartRadius: 0,
borderEndStartRadius: 0,
'&:not(:disabled)': {
borderInlineStartColor: colorPrimaryHover,
},
},
},
},
[componentCls]: {
position: 'relative',
zIndex: 1,
[`&:hover,
&:focus,
&:active`]: {
zIndex: 2,
},
'&[disabled]': {
zIndex: 0,
},
},
[`${componentCls}-icon-only`]: {
fontSize: fontSizeBase,
},
},
};
};
export default genGroupStyle;