Merge pull request #49659 from ant-design/master

merge master to feature
This commit is contained in:
lijianan 2024-07-01 00:18:21 +08:00 committed by GitHub
commit a8e739848e
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
8 changed files with 81 additions and 11 deletions

23
.github/workflows/pkg.pr.new.yml vendored Normal file
View File

@ -0,0 +1,23 @@
name: Publish Any Commit
on: [push, pull_request]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
- run: corepack enable
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Install dependencies
run: npm install
- name: Build
run: npm run build
- run: npx pkg-pr-new publish

View File

@ -26,4 +26,15 @@ describe('Divider', () => {
marginRight: 10, marginRight: 10,
}); });
}); });
it('support bool dashed', () => {
const { container } = render(
<Divider dashed>
test test test
</Divider>,
);
expect(container?.querySelector<HTMLSpanElement>('.ant-divider-dashed')).toHaveStyle({
borderStyle: 'dashed',
});
});
}); });

View File

@ -324,4 +324,31 @@ describe('Dropdown', () => {
expect(container.querySelector('.ant-dropdown-hidden')).toBeFalsy(); expect(container.querySelector('.ant-dropdown-hidden')).toBeFalsy();
jest.useRealTimers(); jest.useRealTimers();
}); });
it('should respect trigger disabled prop', () => {
const { container: container1 } = render(
<Dropdown menu={{ items }} disabled>
<button type="button">button</button>
</Dropdown>,
);
expect(container1.querySelector('button')).toHaveAttribute('disabled');
const { container: container2 } = render(
<Dropdown menu={{ items }}>
<button type="button" disabled>
button
</button>
</Dropdown>,
);
expect(container2.querySelector('button')).toHaveAttribute('disabled');
const { container: container3 } = render(
<Dropdown menu={{ items }} disabled>
<button type="button" disabled={false}>
button
</button>
</Dropdown>,
);
expect(container3.querySelector('button')).not.toHaveAttribute('disabled');
});
}); });

View File

@ -185,9 +185,8 @@ const Dropdown: CompoundedComponent = (props) => {
}, },
child.props.className, child.props.className,
), ),
disabled, disabled: child.props.disabled ?? disabled,
}); });
const triggerActions = disabled ? [] : trigger; const triggerActions = disabled ? [] : trigger;
const alignPoint = !!triggerActions?.includes('contextMenu'); const alignPoint = !!triggerActions?.includes('contextMenu');

View File

@ -61,8 +61,6 @@ const genBaseStyle: GenerateStyle<DropdownToken> = (token) => {
return [ return [
{ {
[componentCls]: { [componentCls]: {
...resetComponent(token),
position: 'absolute', position: 'absolute',
top: -9999, top: -9999,
left: { left: {
@ -185,6 +183,8 @@ const genBaseStyle: GenerateStyle<DropdownToken> = (token) => {
}, },
[`${componentCls}, ${componentCls}-menu-submenu`]: { [`${componentCls}, ${componentCls}-menu-submenu`]: {
...resetComponent(token),
[menuCls]: { [menuCls]: {
padding: dropdownEdgeChildPadding, padding: dropdownEdgeChildPadding,
listStyleType: 'none', listStyleType: 'none',

View File

@ -98,12 +98,18 @@ describe('InputNumber', () => {
).toBe(true); ).toBe(true);
}); });
it('deprecate bordered', () => { it('Deprecation and usage tips', () => {
const errorSpy = jest.spyOn(console, 'error').mockImplementation(() => {}); const errorSpy = jest.spyOn(console, 'error').mockImplementation(() => {});
const { container } = render(<InputNumber bordered={false} />); const { container } = render(<InputNumber bordered={false} type="number" changeOnWheel />);
expect(errorSpy).toHaveBeenCalledWith( expect(errorSpy).toHaveBeenNthCalledWith(
1,
'Warning: [antd: InputNumber] `bordered` is deprecated. Please use `variant` instead.', 'Warning: [antd: InputNumber] `bordered` is deprecated. Please use `variant` instead.',
); );
expect(errorSpy).toHaveBeenNthCalledWith(
2,
'Warning: [antd: InputNumber] When `type=number` is used together with `changeOnWheel`, changeOnWheel may not work properly. Please delete `type=number` if it is not necessary.',
);
expect(container.querySelector('.ant-input-number-borderless')).toBeTruthy(); expect(container.querySelector('.ant-input-number-borderless')).toBeTruthy();
errorSpy.mockRestore(); errorSpy.mockRestore();
}); });

View File

@ -42,8 +42,13 @@ export interface InputNumberProps<T extends ValueType = ValueType>
const InputNumber = React.forwardRef<HTMLInputElement, InputNumberProps>((props, ref) => { const InputNumber = React.forwardRef<HTMLInputElement, InputNumberProps>((props, ref) => {
if (process.env.NODE_ENV !== 'production') { if (process.env.NODE_ENV !== 'production') {
const { deprecated } = devUseWarning('InputNumber'); const typeWarning = devUseWarning('InputNumber');
deprecated(!('bordered' in props), 'bordered', 'variant'); typeWarning.deprecated(!('bordered' in props), 'bordered', 'variant');
typeWarning(
!(props.type === 'number' && props.changeOnWheel),
'usage',
'When `type=number` is used together with `changeOnWheel`, changeOnWheel may not work properly. Please delete `type=number` if it is not necessary.',
);
} }
const { getPrefixCls, direction } = React.useContext(ConfigContext); const { getPrefixCls, direction } = React.useContext(ConfigContext);

View File

@ -192,7 +192,6 @@
"@types/minimist": "^1.2.5", "@types/minimist": "^1.2.5",
"@types/node": "^20.14.2", "@types/node": "^20.14.2",
"@types/nprogress": "^0.2.3", "@types/nprogress": "^0.2.3",
"@types/ora": "^3.2.0",
"@types/pixelmatch": "^5.2.6", "@types/pixelmatch": "^5.2.6",
"@types/pngjs": "^6.0.5", "@types/pngjs": "^6.0.5",
"@types/prismjs": "^1.26.4", "@types/prismjs": "^1.26.4",
@ -275,7 +274,7 @@
"nprogress": "^0.2.0", "nprogress": "^0.2.0",
"open": "^10.1.0", "open": "^10.1.0",
"ora": "^8.0.1", "ora": "^8.0.1",
"pixelmatch": "^5.3.0", "pixelmatch": "^6.0.0",
"pngjs": "^7.0.0", "pngjs": "^7.0.0",
"prettier": "^3.3.2", "prettier": "^3.3.2",
"prettier-plugin-jsdoc": "^1.3.0", "prettier-plugin-jsdoc": "^1.3.0",