Skip to content

Commit 6b80b7c

Browse files
authored
fix(collapsibleactionitems): change icon size and add classname/style (#500)
* fix(collapsibleactionitems): change icon size and add classname/style * fix(collapsibleactionitems): remove data-testid
1 parent 2c82605 commit 6b80b7c

File tree

3 files changed

+21
-10
lines changed

3 files changed

+21
-10
lines changed

src/collapsibleActionItems/__tests__/index.test.tsx

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -37,13 +37,13 @@ describe('test CollapsibleActionItems', () => {
3737
}}
3838
/>
3939
);
40-
const btns = container.querySelectorAll('.dtc-action-btn-wrapper');
40+
const btns = container.querySelectorAll('.dtc-collapsibleActionItems__btn');
4141
expect(btns).toHaveLength(3);
4242
btns.forEach(testClick);
4343
});
4444

4545
test('should render link button when item count more than maxCount', () => {
46-
const { container, getByTestId } = render(
46+
const { container } = render(
4747
<CollapsibleActionItems
4848
actionItems={items}
4949
maxCount={2}
@@ -53,13 +53,13 @@ describe('test CollapsibleActionItems', () => {
5353
dropdownProps={{ trigger: ['click'] }}
5454
/>
5555
);
56-
const btns = container.querySelectorAll('.dtc-action-btn-wrapper');
57-
const dropdownEl = getByTestId('action-dropdown-link');
56+
const btns = container.querySelectorAll('.dtc-collapsibleActionItems__btn');
57+
const icon = container.querySelectorAll('.dtc-collapsibleActionItems__icon')[0];
5858
expect(btns).toHaveLength(1);
59-
expect(dropdownEl).toBeInTheDocument();
59+
expect(icon).toBeInTheDocument();
6060

6161
act(() => {
62-
fireEvent.click(dropdownEl);
62+
fireEvent.click(icon);
6363
});
6464

6565
const dropdownMenuItems = container.querySelectorAll(

src/collapsibleActionItems/index.tsx

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,15 @@
11
import React, { ReactNode } from 'react';
22
import { EllipsisOutlined } from '@ant-design/icons';
33
import { Button, ButtonProps, Divider, Dropdown, DropDownProps, Menu } from 'antd';
4+
import classNames from 'classnames';
5+
6+
import './style.scss';
47

58
type ActionItem = {
69
key: React.Key;
710
name: ReactNode;
811
disabled?: boolean;
912
render?: () => ReactNode;
10-
[propName: string]: any;
1113
};
1214

1315
interface ICollapsibleActionItems {
@@ -18,6 +20,7 @@ interface ICollapsibleActionItems {
1820
collapseIcon?: ReactNode; // 折叠菜单图标
1921
dropdownProps?: Partial<DropDownProps>;
2022
buttonProps?: Partial<ButtonProps>;
23+
style?: React.CSSProperties;
2124
onItemClick?(key: React.Key): void;
2225
}
2326

@@ -30,6 +33,7 @@ const CollapsibleActionItems: React.FC<ICollapsibleActionItems> = (props) => {
3033
collapseIcon = <EllipsisOutlined />,
3134
dropdownProps,
3235
buttonProps,
36+
style,
3337
onItemClick,
3438
} = props;
3539
const isOverMaxCount = actionItems.length > maxCount;
@@ -38,7 +42,7 @@ const CollapsibleActionItems: React.FC<ICollapsibleActionItems> = (props) => {
3842
if (!isCollapse)
3943
return (
4044
<span
41-
className="dtc-action-btn-wrapper"
45+
className="dtc-collapsibleActionItems__btn"
4246
key={item.key}
4347
onClick={() => !item.disabled && onItemClick?.(item.key)}
4448
>
@@ -70,7 +74,7 @@ const CollapsibleActionItems: React.FC<ICollapsibleActionItems> = (props) => {
7074
) : null;
7175

7276
return (
73-
<div className={className}>
77+
<div className={classNames('dtc-collapsibleActionItems', className)} style={style}>
7478
{displayAction.map((actionItem, index) => {
7579
const showDivider = index < actionItems.length - 1;
7680
return (
@@ -86,7 +90,7 @@ const CollapsibleActionItems: React.FC<ICollapsibleActionItems> = (props) => {
8690
getPopupContainer={(triggerNode) => triggerNode.parentElement ?? document.body}
8791
{...dropdownProps}
8892
>
89-
<a data-testid="action-dropdown-link">{collapseIcon}</a>
93+
<a className="dtc-collapsibleActionItems__icon">{collapseIcon}</a>
9094
</Dropdown>
9195
)}
9296
</div>
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
$card_prefix: "dtc-collapsibleActionItems";
2+
3+
.#{$card_prefix} {
4+
&__icon {
5+
font-size: 16px;
6+
}
7+
}

0 commit comments

Comments
 (0)