@@ -4,7 +4,7 @@ import useMergedState from 'rc-util/lib/hooks/useMergedState';
44import type { TreeSelectProps } from 'rc-tree-select' ;
55import generate from 'rc-tree-select/lib/generate' ;
66import type { FlattenDataNode } from 'rc-tree-select/lib/interface' ;
7- import type { RefSelectProps } from 'rc-select/lib/generate' ;
7+ import type { RefSelectProps , Placement } from 'rc-select/lib/generate' ;
88import OptionList from './OptionList' ;
99import type { CascaderValueType , DataNode , FieldNames , ShowSearchType } from './interface' ;
1010import CascaderContext from './context' ;
@@ -98,6 +98,10 @@ interface BaseCascaderProps
9898 popupClassName ?: string ;
9999 dropdownClassName ?: string ;
100100
101+ /** @deprecated Use `placement` instead */
102+ popupPlacement ?: Placement ;
103+ placement ?: Placement ;
104+
101105 /** @deprecated Use `onDropdownVisibleChange` instead */
102106 onPopupVisibleChange ?: ( open : boolean ) => void ;
103107 onDropdownVisibleChange ?: ( open : boolean ) => void ;
@@ -153,6 +157,8 @@ const Cascader = React.forwardRef((props: CascaderProps, ref: React.Ref<Cascader
153157 popupClassName,
154158 onDropdownVisibleChange,
155159 onPopupVisibleChange,
160+ popupPlacement,
161+ placement,
156162
157163 searchValue,
158164 onSearch,
@@ -295,12 +301,18 @@ const Cascader = React.forwardRef((props: CascaderProps, ref: React.Ref<Cascader
295301 popupClassName === undefined ,
296302 '`popupClassName` is deprecated. Please use `dropdownClassName` instead.' ,
297303 ) ;
304+ warning (
305+ popupPlacement === undefined ,
306+ '`popupPlacement` is deprecated. Please use `placement` instead.' ,
307+ ) ;
298308 }
299309
300310 const mergedOpen = open !== undefined ? open : popupVisible ;
301311
302312 const mergedDropdownClassName = dropdownClassName || popupClassName ;
303313
314+ const mergedPlacement = placement || popupPlacement ;
315+
304316 const onInternalDropdownVisibleChange = ( nextVisible : boolean ) => {
305317 onDropdownVisibleChange ?.( nextVisible ) ;
306318 onPopupVisibleChange ?.( nextVisible ) ;
@@ -349,6 +361,7 @@ const Cascader = React.forwardRef((props: CascaderProps, ref: React.Ref<Cascader
349361 ref = { cascaderRef }
350362 { ...restProps }
351363 value = { checkable ? internalValue : internalValue [ 0 ] }
364+ placement = { mergedPlacement }
352365 dropdownMatchSelectWidth = { false }
353366 dropdownStyle = { dropdownStyle }
354367 dropdownClassName = { mergedDropdownClassName }
0 commit comments