diff --git a/package.json b/package.json index 4525da12..c9f7dbf6 100644 --- a/package.json +++ b/package.json @@ -55,7 +55,6 @@ "father": "^2.13.2", "gh-pages": "^3.1.0", "glob": "^7.1.6", - "jest": "^27.1.0", "np": "^6.0.0", "rc-form": "^2.4.0", "react": "^16.0.0", @@ -65,7 +64,7 @@ "dependencies": { "@babel/runtime": "^7.12.5", "array-tree-filter": "^2.1.0", - "rc-tree-select": "~4.4.0-alpha.5", + "rc-tree-select": "~4.5.0-alpha.0", "rc-trigger": "^5.0.4", "rc-util": "^5.0.1", "warning": "^4.0.1" diff --git a/src/Cascader.tsx b/src/Cascader.tsx index 832d612b..60a4145b 100644 --- a/src/Cascader.tsx +++ b/src/Cascader.tsx @@ -4,7 +4,7 @@ import useMergedState from 'rc-util/lib/hooks/useMergedState'; import type { TreeSelectProps } from 'rc-tree-select'; import generate from 'rc-tree-select/lib/generate'; import type { FlattenDataNode } from 'rc-tree-select/lib/interface'; -import type { RefSelectProps } from 'rc-select/lib/generate'; +import type { RefSelectProps, Placement } from 'rc-select/lib/generate'; import OptionList from './OptionList'; import type { CascaderValueType, DataNode, FieldNames, ShowSearchType } from './interface'; import CascaderContext from './context'; @@ -98,6 +98,10 @@ interface BaseCascaderProps popupClassName?: string; dropdownClassName?: string; + /** @deprecated Use `placement` instead */ + popupPlacement?: Placement; + placement?: Placement; + /** @deprecated Use `onDropdownVisibleChange` instead */ onPopupVisibleChange?: (open: boolean) => void; onDropdownVisibleChange?: (open: boolean) => void; @@ -153,6 +157,8 @@ const Cascader = React.forwardRef((props: CascaderProps, ref: React.Ref { onDropdownVisibleChange?.(nextVisible); onPopupVisibleChange?.(nextVisible); @@ -349,6 +361,7 @@ const Cascader = React.forwardRef((props: CascaderProps, ref: React.Ref { popupVisible onPopupVisibleChange={onPopupVisibleChange} popupClassName="legacy-cls" + popupPlacement="topRight" />, ); @@ -464,8 +465,12 @@ describe('Cascader.Basic', () => { expect(errorSpy).toHaveBeenCalledWith( 'Warning: `popupClassName` is deprecated. Please use `dropdownClassName` instead.', ); + expect(errorSpy).toHaveBeenCalledWith( + 'Warning: `popupPlacement` is deprecated. Please use `placement` instead.', + ); expect(wrapper.exists('.legacy-cls')).toBeTruthy(); + expect(wrapper.find('Trigger').prop('popupPlacement')).toEqual('topRight'); errorSpy.mockRestore(); });