mirror of
https://github.com/ant-design/ant-design.git
synced 2025-06-18 08:00:53 +08:00
Merge pull request #49659 from ant-design/master
merge master to feature
This commit is contained in:
commit
a8e739848e
23
.github/workflows/pkg.pr.new.yml
vendored
Normal file
23
.github/workflows/pkg.pr.new.yml
vendored
Normal 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
|
@ -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',
|
||||||
|
});
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
@ -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');
|
||||||
|
});
|
||||||
});
|
});
|
||||||
|
@ -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');
|
||||||
|
|
||||||
|
@ -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',
|
||||||
|
@ -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();
|
||||||
});
|
});
|
||||||
|
@ -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);
|
||||||
|
@ -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",
|
||||||
|
Loading…
Reference in New Issue
Block a user