diff --git a/README.md b/README.md
index 38a8010b..7a572369 100644
--- a/README.md
+++ b/README.md
@@ -54,58 +54,58 @@ online example: https://tree-select-react-component.vercel.app/
 
 ### TreeSelect props
 
-| name                     | description                                                                                                                                                                         | type                                                                                                                                                                                                                           | default                           |
-| ------------------------ | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------- |
-| className                | additional css class of root dom node                                                                                                                                               | String                                                                                                                                                                                                                         | ''                                |
-| prefixCls                | prefix class                                                                                                                                                                        | String                                                                                                                                                                                                                         | ''                                |
-| animation                | dropdown animation name. only support slide-up now                                                                                                                                  | String                                                                                                                                                                                                                         | ''                                |
-| transitionName           | dropdown css animation name                                                                                                                                                         | String                                                                                                                                                                                                                         | ''                                |
-| choiceTransitionName     | css animation name for selected items at multiple mode                                                                                                                              | String                                                                                                                                                                                                                         | ''                                |
-| dropdownMatchSelectWidth | whether dropdown's with is same with select. Default set `min-width` same as input                                                                                                  | bool                                                                                                                                                                                                                           | true                              |
-| dropdownClassName        | additional className applied to dropdown                                                                                                                                            | String                                                                                                                                                                                                                         | -                                 |
-| dropdownStyle            | additional style applied to dropdown                                                                                                                                                | Object                                                                                                                                                                                                                         | {}                                |
-| onDropdownVisibleChange  | control dropdown visible                                                                                                                                                            | function                                                                                                                                                                                                                       | `() => { return true; }`          |
-| notFoundContent          | specify content to show when no result matches.                                                                                                                                     | String                                                                                                                                                                                                                         | 'Not Found'                       |
-| showSearch               | whether show search input in single mode                                                                                                                                            | bool                                                                                                                                                                                                                           | true                              |
-| allowClear               | whether allowClear                                                                                                                                                                  | bool                                                                                                                                                                                                                           | false                             |
-| maxTagTextLength         | max tag text length to show                                                                                                                                                         | number                                                                                                                                                                                                                         | -                                 |
-| maxTagCount              | max tag count to show                                                                                                                                                               | number                                                                                                                                                                                                                         | -                                 |
-| maxCount                 | Limit the maximum number of items that can be selected in multiple mode                                                                                                             | number                                                                                                                                                                                                                         | -                                 |
-| maxTagPlaceholder        | placeholder for omitted values                                                                                                                                                      | ReactNode/function(omittedValues)                                                                                                                                                                                              | -                                 |
-| multiple                 | whether multiple select (true when enable treeCheckable)                                                                                                                            | bool                                                                                                                                                                                                                           | false                             |
-| disabled                 | whether disabled select                                                                                                                                                             | bool                                                                                                                                                                                                                           | false                             |
-| searchValue              | work with `onSearch` to make search value controlled.                                                                                                                               | string                                                                                                                                                                                                                         | ''                                |
-| defaultValue             | initial selected treeNode(s)                                                                                                                                                        | same as value type                                                                                                                                                                                                             | -                                 |
-| value                    | current selected treeNode(s).                                                                                                                                                       | normal: String/Array<String>. labelInValue: {value:String,label:React.Node}/Array<{value,label}>. treeCheckStrictly(halfChecked default false): {value:String,label:React.Node, halfChecked}/Array<{value,label,halfChecked}>. | -                                 |
-| labelInValue             | whether to embed label in value, see above value type                                                                                                                               | Bool                                                                                                                                                                                                                           | false                             |
-| onChange                 | called when select treeNode or input value change                                                                                                                                   | function(value, label(null), extra)                                                                                                                                                                                            | -                                 |
-| onSelect                 | called when select treeNode                                                                                                                                                         | function(value, node, extra)                                                                                                                                                                                                   | -                                 |
-| onSearch                 | called when input changed                                                                                                                                                           | function                                                                                                                                                                                                                       | -                                 |
-| onTreeExpand             | called when tree node expand                                                                                                                                                        | function(expandedKeys)                                                                                                                                                                                                         | -                                 |
-| onPopupScroll            | called when popup scroll                                                                                                                                                            | function(event)                                                                                                                                                                                                                | -                                 |
-| showCheckedStrategy      | `TreeSelect.SHOW_ALL`: show all checked treeNodes (Include parent treeNode). `TreeSelect.SHOW_PARENT`: show checked treeNodes (Just show parent treeNode). Default just show child. | enum{TreeSelect.SHOW_ALL, TreeSelect.SHOW_PARENT, TreeSelect.SHOW_CHILD }                                                                                                                                                      | TreeSelect.SHOW_CHILD             |
-| treeIcon                 | show tree icon                                                                                                                                                                      | bool                                                                                                                                                                                                                           | false                             |
-| treeLine                 | show tree line                                                                                                                                                                      | bool                                                                                                                                                                                                                           | false                             |
-| treeDefaultExpandAll     | default expand all treeNode                                                                                                                                                         | bool                                                                                                                                                                                                                           | false                             |
-| treeDefaultExpandedKeys  | default expanded treeNode keys                                                                                                                                                      | Array<String>                                                                                                                                                                                                                  | -                                 |
-| treeExpandedKeys         | set tree expanded keys                                                                                                                                                              | Array<String>                                                                                                                                                                                                                  | -                                 |
-| treeExpandAction         | Tree open logic, optional: false \| `click` \| `doubleClick`, same as `expandAction` of `rc-tree`                                                                                   | string \| boolean                                                                                                                                                                                                              | `click`                           |
-| treeCheckable            | whether tree show checkbox (select callback will not fire)                                                                                                                          | bool                                                                                                                                                                                                                           | false                             |
-| treeCheckStrictly        | check node precisely, parent and children nodes are not associated                                                                                                                  | bool                                                                                                                                                                                                                           | false                             |
-| filterTreeNode           | whether filter treeNodes by input value. default filter by treeNode's treeNodeFilterProp prop's value                                                                               | bool/Function(inputValue:string, treeNode:TreeNode)                                                                                                                                                                            | Function                          |
-| treeNodeFilterProp       | which prop value of treeNode will be used for filter if filterTreeNode return true                                                                                                  | String                                                                                                                                                                                                                         | 'value'                           |
-| treeNodeLabelProp        | which prop value of treeNode will render as content of select                                                                                                                       | String                                                                                                                                                                                                                         | 'title'                           |
-| treeData                 | treeNodes data Array, if set it then you need not to construct children TreeNode. (value should be unique across the whole array)                                                   | array<{value,label,children, [disabled,selectable]}>                                                                                                                                                                           | []                                |
-| treeDataSimpleMode       | enable simple mode of treeData.(treeData should be like this: [{id:1, pId:0, value:'1', label:"test1",...},...], `pId` is parent node's id)                                         | bool/object{id:'id', pId:'pId', rootPId:null}                                                                                                                                                                                  | false                             |
-| treeTitleRender          | Custom render nodes                                                                                                                                                                 | (nodeData: OptionType) => ReactNode                                                                                                                                                                                            |
-| loadData                 | load data asynchronously                                                                                                                                                            | function(node)                                                                                                                                                                                                                 | -                                 |
-| getPopupContainer        | container which popup select menu rendered into                                                                                                                                     | function(trigger:Node):Node                                                                                                                                                                                                    | function(){return document.body;} |
-| autoClearSearchValue     | auto clear search input value when multiple select is selected/deselected                                                                                                           | boolean                                                                                                                                                                                                                        | true                              |
-| suffixIcon               | specify the select arrow icon                                                                                                                                                       | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
-| clearIcon                | specify the clear icon                                                                                                                                                              | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
-| removeIcon               | specify the remove icon                                                                                                                                                             | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
-| switcherIcon             | specify the switcher icon                                                                                                                                                           | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
-| virtual                  | Disable virtual when `false`                                                                                                                                                        | false                                                                                                                                                                                                                          | -                                 |
+| name                    | description                                                                                                                                                                         | type                                                                                                                                                                                                                           | default                           |
+| ----------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | --------------------------------- |
+| className               | additional css class of root dom node                                                                                                                                               | String                                                                                                                                                                                                                         | ''                                |
+| prefixCls               | prefix class                                                                                                                                                                        | String                                                                                                                                                                                                                         | ''                                |
+| animation               | dropdown animation name. only support slide-up now                                                                                                                                  | String                                                                                                                                                                                                                         | ''                                |
+| transitionName          | dropdown css animation name                                                                                                                                                         | String                                                                                                                                                                                                                         | ''                                |
+| choiceTransitionName    | css animation name for selected items at multiple mode                                                                                                                              | String                                                                                                                                                                                                                         | ''                                |
+| popupMatchSelectWidth   | whether dropdown's with is same with select. Default set `min-width` same as input                                                                                                  | bool                                                                                                                                                                                                                           | true                              |
+| dropdownClassName       | additional className applied to dropdown                                                                                                                                            | String                                                                                                                                                                                                                         | -                                 |
+| dropdownStyle           | additional style applied to dropdown                                                                                                                                                | Object                                                                                                                                                                                                                         | {}                                |
+| onPopupVisibleChange    | control dropdown visible                                                                                                                                                            | function                                                                                                                                                                                                                       | `() => { return true; }`          |
+| notFoundContent         | specify content to show when no result matches.                                                                                                                                     | String                                                                                                                                                                                                                         | 'Not Found'                       |
+| showSearch              | whether show search input in single mode                                                                                                                                            | bool                                                                                                                                                                                                                           | true                              |
+| allowClear              | whether allowClear                                                                                                                                                                  | bool                                                                                                                                                                                                                           | false                             |
+| maxTagTextLength        | max tag text length to show                                                                                                                                                         | number                                                                                                                                                                                                                         | -                                 |
+| maxTagCount             | max tag count to show                                                                                                                                                               | number                                                                                                                                                                                                                         | -                                 |
+| maxCount                | Limit the maximum number of items that can be selected in multiple mode                                                                                                             | number                                                                                                                                                                                                                         | -                                 |
+| maxTagPlaceholder       | placeholder for omitted values                                                                                                                                                      | ReactNode/function(omittedValues)                                                                                                                                                                                              | -                                 |
+| multiple                | whether multiple select (true when enable treeCheckable)                                                                                                                            | bool                                                                                                                                                                                                                           | false                             |
+| disabled                | whether disabled select                                                                                                                                                             | bool                                                                                                                                                                                                                           | false                             |
+| searchValue             | work with `onSearch` to make search value controlled.                                                                                                                               | string                                                                                                                                                                                                                         | ''                                |
+| defaultValue            | initial selected treeNode(s)                                                                                                                                                        | same as value type                                                                                                                                                                                                             | -                                 |
+| value                   | current selected treeNode(s).                                                                                                                                                       | normal: String/Array<String>. labelInValue: {value:String,label:React.Node}/Array<{value,label}>. treeCheckStrictly(halfChecked default false): {value:String,label:React.Node, halfChecked}/Array<{value,label,halfChecked}>. | -                                 |
+| labelInValue            | whether to embed label in value, see above value type                                                                                                                               | Bool                                                                                                                                                                                                                           | false                             |
+| onChange                | called when select treeNode or input value change                                                                                                                                   | function(value, label(null), extra)                                                                                                                                                                                            | -                                 |
+| onSelect                | called when select treeNode                                                                                                                                                         | function(value, node, extra)                                                                                                                                                                                                   | -                                 |
+| onSearch                | called when input changed                                                                                                                                                           | function                                                                                                                                                                                                                       | -                                 |
+| onTreeExpand            | called when tree node expand                                                                                                                                                        | function(expandedKeys)                                                                                                                                                                                                         | -                                 |
+| onPopupScroll           | called when popup scroll                                                                                                                                                            | function(event)                                                                                                                                                                                                                | -                                 |
+| showCheckedStrategy     | `TreeSelect.SHOW_ALL`: show all checked treeNodes (Include parent treeNode). `TreeSelect.SHOW_PARENT`: show checked treeNodes (Just show parent treeNode). Default just show child. | enum{TreeSelect.SHOW_ALL, TreeSelect.SHOW_PARENT, TreeSelect.SHOW_CHILD }                                                                                                                                                      | TreeSelect.SHOW_CHILD             |
+| treeIcon                | show tree icon                                                                                                                                                                      | bool                                                                                                                                                                                                                           | false                             |
+| treeLine                | show tree line                                                                                                                                                                      | bool                                                                                                                                                                                                                           | false                             |
+| treeDefaultExpandAll    | default expand all treeNode                                                                                                                                                         | bool                                                                                                                                                                                                                           | false                             |
+| treeDefaultExpandedKeys | default expanded treeNode keys                                                                                                                                                      | Array<String>                                                                                                                                                                                                                  | -                                 |
+| treeExpandedKeys        | set tree expanded keys                                                                                                                                                              | Array<String>                                                                                                                                                                                                                  | -                                 |
+| treeExpandAction        | Tree open logic, optional: false \| `click` \| `doubleClick`, same as `expandAction` of `rc-tree`                                                                                   | string \| boolean                                                                                                                                                                                                              | `click`                           |
+| treeCheckable           | whether tree show checkbox (select callback will not fire)                                                                                                                          | bool                                                                                                                                                                                                                           | false                             |
+| treeCheckStrictly       | check node precisely, parent and children nodes are not associated                                                                                                                  | bool                                                                                                                                                                                                                           | false                             |
+| filterTreeNode          | whether filter treeNodes by input value. default filter by treeNode's treeNodeFilterProp prop's value                                                                               | bool/Function(inputValue:string, treeNode:TreeNode)                                                                                                                                                                            | Function                          |
+| treeNodeFilterProp      | which prop value of treeNode will be used for filter if filterTreeNode return true                                                                                                  | String                                                                                                                                                                                                                         | 'value'                           |
+| treeNodeLabelProp       | which prop value of treeNode will render as content of select                                                                                                                       | String                                                                                                                                                                                                                         | 'title'                           |
+| treeData                | treeNodes data Array, if set it then you need not to construct children TreeNode. (value should be unique across the whole array)                                                   | array<{value,label,children, [disabled,selectable]}>                                                                                                                                                                           | []                                |
+| treeDataSimpleMode      | enable simple mode of treeData.(treeData should be like this: [{id:1, pId:0, value:'1', label:"test1",...},...], `pId` is parent node's id)                                         | bool/object{id:'id', pId:'pId', rootPId:null}                                                                                                                                                                                  | false                             |
+| treeTitleRender         | Custom render nodes                                                                                                                                                                 | (nodeData: OptionType) => ReactNode                                                                                                                                                                                            |
+| loadData                | load data asynchronously                                                                                                                                                            | function(node)                                                                                                                                                                                                                 | -                                 |
+| getPopupContainer       | container which popup select menu rendered into                                                                                                                                     | function(trigger:Node):Node                                                                                                                                                                                                    | function(){return document.body;} |
+| autoClearSearchValue    | auto clear search input value when multiple select is selected/deselected                                                                                                           | boolean                                                                                                                                                                                                                        | true                              |
+| suffixIcon              | specify the select arrow icon                                                                                                                                                       | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
+| clearIcon               | specify the clear icon                                                                                                                                                              | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
+| removeIcon              | specify the remove icon                                                                                                                                                             | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
+| switcherIcon            | specify the switcher icon                                                                                                                                                           | ReactNode \| (props: TreeProps) => ReactNode                                                                                                                                                                                   | -                                 |
+| virtual                 | Disable virtual when `false`                                                                                                                                                        | false                                                                                                                                                                                                                          | -                                 |
 
 ### TreeNode props
 
diff --git a/assets/select.less b/assets/select.less
index 2e473db4..a71d5489 100644
--- a/assets/select.less
+++ b/assets/select.less
@@ -1,3 +1,3 @@
-@import '~rc-select/assets/index';
+@import '~@rc-component/select/assets/index';
 
 @select-prefix: ~'rc-tree-select';
\ No newline at end of file
diff --git a/examples/basic.tsx b/examples/basic.tsx
index 4b6b8cb4..0346307b 100644
--- a/examples/basic.tsx
+++ b/examples/basic.tsx
@@ -124,7 +124,7 @@ class Demo extends React.Component {
     console.log(args);
   };
 
-  onDropdownVisibleChange = visible => {
+  onPopupVisibleChange = visible => {
     const { value } = this.state;
     console.log(visible, value);
     if (Array.isArray(value) && value.length > 1 && value.length < 3) {
@@ -205,8 +205,8 @@ class Demo extends React.Component {
             console.log('onChange', val, ...args);
             this.setState({ value: val });
           }}
-          onDropdownVisibleChange={v => {
-            console.log('single onDropdownVisibleChange', v);
+          onPopupVisibleChange={v => {
+            console.log('single onPopupVisibleChange', v);
             this.setState({
               tsOpen: v,
             });
@@ -259,11 +259,11 @@ class Demo extends React.Component {
           choiceTransitionName="rc-tree-select-selection__choice-zoom"
           style={{ width: 300 }}
           // dropdownStyle={{ height: 200, overflow: 'auto' }}
-          dropdownAlign={{
+          popupAlign={{
             overflow: { adjustY: 0, adjustX: 0 },
             offset: [0, 2],
           }}
-          onDropdownVisibleChange={this.onDropdownVisibleChange}
+          onPopupVisibleChange={this.onPopupVisibleChange}
           placeholder={<i>请下拉选择</i>}
           treeLine
           maxTagTextLength={10}
@@ -327,7 +327,7 @@ class Demo extends React.Component {
         <h2>Testing in extreme conditions (Boundary conditions test) </h2>
         <TreeSelect
           style={{ width: 200 }}
-          dropdownStyle={{ maxHeight: 200, overflow: 'auto' }}
+          popupStyle={{ maxHeight: 200, overflow: 'auto' }}
           defaultValue="leaf1"
           multiple
           treeCheckable
diff --git a/examples/custom-icons.tsx b/examples/custom-icons.tsx
index 4f4ebfda..7a5d66d2 100644
--- a/examples/custom-icons.tsx
+++ b/examples/custom-icons.tsx
@@ -86,7 +86,7 @@ function Demo() {
         placeholder={<span>Please Select</span>}
         transitionName="rc-tree-select-dropdown-slide-up"
         style={{ width: 300 }}
-        dropdownStyle={{ maxHeight: 200, overflow: 'auto', zIndex: 1500 }}
+        popupStyle={{ maxHeight: 200, overflow: 'auto', zIndex: 1500 }}
         showSearch
         allowClear
         {...iconProps}
@@ -99,7 +99,7 @@ function Demo() {
         placeholder={<span>Please Select</span>}
         transitionName="rc-tree-select-dropdown-slide-up"
         style={{ width: 300 }}
-        dropdownStyle={{ maxHeight: 200, overflow: 'auto', zIndex: 1500 }}
+        popupStyle={{ maxHeight: 200, overflow: 'auto', zIndex: 1500 }}
         showSearch
         allowClear
         {...iconPropsFunction}
diff --git a/examples/filter.tsx b/examples/filter.tsx
index 8a7881a0..28ca57e8 100644
--- a/examples/filter.tsx
+++ b/examples/filter.tsx
@@ -82,7 +82,7 @@ class Demo extends React.Component {
         <h2>use treeDataSimpleMode</h2>
         <TreeSelect
           style={{ width: 300 }}
-          dropdownStyle={{ maxHeight: 200, overflow: 'auto' }}
+          popupStyle={{ maxHeight: 200, overflow: 'auto' }}
           placeholder={<i>请下拉选择</i>}
           treeLine
           maxTagTextLength={10}
diff --git a/examples/form.tsx b/examples/form.tsx
index 17464cd5..7a391f9b 100644
--- a/examples/form.tsx
+++ b/examples/form.tsx
@@ -1,8 +1,8 @@
 import React, { Component } from 'react';
-import Select from 'rc-select';
+import Select from '@rc-component/select';
 import Form, { useForm, Field } from 'rc-field-form';
 import TreeSelect from '../src';
-import 'rc-select/assets/index.less';
+import '@rc-component/select/assets/index.less';
 import '../assets/index.less';
 import { gData } from './utils/dataUtil';
 
diff --git a/examples/width.tsx b/examples/width.tsx
index 8a7121f5..922a287e 100644
--- a/examples/width.tsx
+++ b/examples/width.tsx
@@ -4,7 +4,7 @@ import TreeSelect, { TreeNode } from '../src';
 
 function Demo() {
   return (
-    <TreeSelect style={{ width: 120 }} dropdownMatchSelectWidth={false} treeDefaultExpandAll>
+    <TreeSelect style={{ width: 120 }} popupMatchSelectWidth={false} treeDefaultExpandAll>
       <TreeNode value="parent 1" title="parent 1">
         <TreeNode value="parent 1-0 sdfsdfsdsdfsd" title="parent 1-0 sdfsdfsd">
           <TreeNode value="leaf1  sdfsdf" title="leaf1" />
diff --git a/now.json b/now.json
deleted file mode 100644
index f0ac9cc4..00000000
--- a/now.json
+++ /dev/null
@@ -1,11 +0,0 @@
-{
-  "version": 2,
-  "name": "rc-tree-select",
-  "builds": [
-    {
-      "src": "package.json",
-      "use": "@now/static-build",
-      "config": { "distDir": "dist" }
-    }
-  ]
-}
diff --git a/package.json b/package.json
index 3f06ab14..f9eb5ad9 100644
--- a/package.json
+++ b/package.json
@@ -1,6 +1,6 @@
 {
-  "name": "rc-tree-select",
-  "version": "5.27.0",
+  "name": "@rc-component/tree-select",
+  "version": "1.0.0",
   "description": "tree-select ui component for react",
   "keywords": [
     "react",
@@ -35,7 +35,7 @@
     "lint": "eslint src/ examples/ --ext .tsx,.ts,.jsx,.js",
     "now-build": "npm run build",
     "prepare": "husky && dumi setup",
-    "prepublishOnly": "npm run compile && np --yolo --no-publish --any-branch",
+    "prepublishOnly": "npm run compile && rc-np",
     "prettier": "prettier '{src,tests}/**/*.{ts,tsx}' 'tests/**/*.js' --write",
     "start": "dumi dev",
     "test": "rc-test"
@@ -44,15 +44,15 @@
     "*": "prettier --write --ignore-unknown"
   },
   "dependencies": {
-    "@babel/runtime": "^7.25.7",
     "classnames": "2.x",
-    "rc-select": "~14.16.2",
-    "rc-tree": "~5.13.0",
-    "rc-util": "^5.43.0"
+    "@rc-component/select": "~1.0.0",
+    "rc-tree": "~5.13.1",
+    "@rc-component/util": "^1.2.1"
   },
   "devDependencies": {
-    "@rc-component/father-plugin": "^1.1.0",
-    "@rc-component/trigger": "^1.18.3",
+    "@rc-component/father-plugin": "^2.0.2",
+    "@rc-component/np": "^1.0.3",
+    "@rc-component/trigger": "^3.0.0",
     "@testing-library/react": "^12.1.5",
     "@types/jest": "^29.5.13",
     "@types/node": "^22.7.5",
@@ -73,7 +73,6 @@
     "glob": "^11.0.0",
     "husky": "^9.1.6",
     "lint-staged": "^15.2.10",
-    "np": "^10.0.7",
     "prettier": "^3.3.3",
     "rc-dialog": "^9.6.0",
     "rc-field-form": "^2.4.0",
diff --git a/src/OptionList.tsx b/src/OptionList.tsx
index 5b53047e..b242f505 100644
--- a/src/OptionList.tsx
+++ b/src/OptionList.tsx
@@ -1,17 +1,17 @@
-import { useBaseProps } from 'rc-select';
-import type { RefOptionListProps } from 'rc-select/lib/OptionList';
+import { useBaseProps } from '@rc-component/select';
+import type { RefOptionListProps } from '@rc-component/select/lib/OptionList';
 import type { TreeProps } from 'rc-tree';
 import Tree from 'rc-tree';
 import { UnstableContext } from 'rc-tree';
 import type { EventDataNode, ScrollTo } from 'rc-tree/lib/interface';
-import KeyCode from 'rc-util/lib/KeyCode';
-import useMemo from 'rc-util/lib/hooks/useMemo';
+import KeyCode from '@rc-component/util/lib/KeyCode';
+import useMemo from '@rc-component/util/lib/hooks/useMemo';
 import * as React from 'react';
 import LegacyContext from './LegacyContext';
 import TreeSelectContext from './TreeSelectContext';
 import type { DataNode, Key, SafeKey } from './interface';
 import { getAllKeys, isCheckDisabled } from './utils/valueUtil';
-import { useEvent } from 'rc-util';
+import { useEvent } from '@rc-component/util';
 
 const HIDDEN_STYLE = {
   width: 0,
@@ -43,7 +43,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
     treeData,
     fieldNames,
     onSelect,
-    dropdownMatchSelectWidth,
+    popupMatchSelectWidth,
     treeExpandAction,
     treeTitleRender,
     onPopupScroll,
@@ -263,6 +263,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
     }
 
     setActiveKey(nextActiveKey);
+    // eslint-disable-next-line react-hooks/exhaustive-deps
   }, [open, searchValue]);
 
   // ========================= Keyboard =========================
@@ -305,6 +306,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
 
   const hasLoadDataFn = useMemo(
     () => (searchValue ? false : true),
+    // eslint-disable-next-line react-hooks/exhaustive-deps
     [searchValue, treeExpandedKeys || expandedKeys],
     ([preSearchValue], [nextSearchValue, nextExcludeSearchExpandedKeys]) =>
       preSearchValue !== nextSearchValue && !!(nextSearchValue || nextExcludeSearchExpandedKeys),
@@ -347,7 +349,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
           height={listHeight}
           itemHeight={listItemHeight}
           itemScrollOffset={listItemScrollOffset}
-          virtual={virtual !== false && dropdownMatchSelectWidth !== false}
+          virtual={virtual !== false && popupMatchSelectWidth !== false}
           multiple={multiple}
           icon={treeIcon}
           showIcon={showTreeIcon}
diff --git a/src/TreeSelect.tsx b/src/TreeSelect.tsx
index 1a8a938d..ac3d538c 100644
--- a/src/TreeSelect.tsx
+++ b/src/TreeSelect.tsx
@@ -1,11 +1,10 @@
-import type { BaseSelectPropsWithoutPrivate, BaseSelectRef } from 'rc-select';
-import { BaseSelect } from 'rc-select';
-import useId from 'rc-select/lib/hooks/useId';
+import type { BaseSelectPropsWithoutPrivate, BaseSelectRef } from '@rc-component/select';
+import { BaseSelect } from '@rc-component/select';
+import useId from '@rc-component/select/lib/hooks/useId';
 import type { IconType } from 'rc-tree/lib/interface';
 import type { ExpandAction } from 'rc-tree/lib/Tree';
 import { conductCheck } from 'rc-tree/lib/utils/conductUtil';
-import useMergedState from 'rc-util/lib/hooks/useMergedState';
-import warning from 'rc-util/lib/warning';
+import useMergedState from '@rc-component/util/lib/hooks/useMergedState';
 import * as React from 'react';
 import useCache from './hooks/useCache';
 import useCheckedKeys from './hooks/useCheckedKeys';
@@ -93,7 +92,7 @@ export interface TreeSelectProps<ValueType = any, OptionType extends DataNode =
   listHeight?: number;
   listItemHeight?: number;
   listItemScrollOffset?: number;
-  onDropdownVisibleChange?: (open: boolean) => void;
+  onPopupVisibleChange?: (open: boolean) => void;
   treeTitleRender?: (node: OptionType) => React.ReactNode;
 
   // >>> Tree
@@ -163,8 +162,8 @@ const TreeSelect = React.forwardRef<BaseSelectRef, TreeSelectProps>((props, ref)
     listItemHeight = 20,
     listItemScrollOffset = 0,
 
-    onDropdownVisibleChange,
-    dropdownMatchSelectWidth = true,
+    onPopupVisibleChange,
+    popupMatchSelectWidth = true,
 
     // Tree
     treeLine,
@@ -582,22 +581,13 @@ const TreeSelect = React.forwardRef<BaseSelectRef, TreeSelectProps>((props, ref)
   );
 
   // ========================== Dropdown ==========================
-  const onInternalDropdownVisibleChange = React.useCallback(
+  const onInternalPopupVisibleChange = React.useCallback(
     (open: boolean) => {
-      if (onDropdownVisibleChange) {
-        const legacyParam = {};
-
-        Object.defineProperty(legacyParam, 'documentClickClose', {
-          get() {
-            warning(false, 'Second param of `onDropdownVisibleChange` has been removed.');
-            return false;
-          },
-        });
-
-        (onDropdownVisibleChange as any)(open, legacyParam);
+      if (onPopupVisibleChange) {
+        onPopupVisibleChange(open);
       }
     },
-    [onDropdownVisibleChange],
+    [onPopupVisibleChange],
   );
 
   // ====================== Display Change ========================
@@ -619,7 +609,7 @@ const TreeSelect = React.forwardRef<BaseSelectRef, TreeSelectProps>((props, ref)
   const treeSelectContext = React.useMemo<TreeSelectContextProps>(() => {
     return {
       virtual,
-      dropdownMatchSelectWidth,
+      popupMatchSelectWidth,
       listHeight,
       listItemHeight,
       listItemScrollOffset,
@@ -636,7 +626,7 @@ const TreeSelect = React.forwardRef<BaseSelectRef, TreeSelectProps>((props, ref)
     };
   }, [
     virtual,
-    dropdownMatchSelectWidth,
+    popupMatchSelectWidth,
     listHeight,
     listItemHeight,
     listItemScrollOffset,
@@ -716,8 +706,8 @@ const TreeSelect = React.forwardRef<BaseSelectRef, TreeSelectProps>((props, ref)
           // >>> Options
           OptionList={OptionList}
           emptyOptions={!mergedTreeData.length}
-          onDropdownVisibleChange={onInternalDropdownVisibleChange}
-          dropdownMatchSelectWidth={dropdownMatchSelectWidth}
+          onPopupVisibleChange={onInternalPopupVisibleChange}
+          popupMatchSelectWidth={popupMatchSelectWidth}
         />
       </LegacyContext.Provider>
     </TreeSelectContext.Provider>
diff --git a/src/TreeSelectContext.ts b/src/TreeSelectContext.ts
index fcb2eba0..f2545071 100644
--- a/src/TreeSelectContext.ts
+++ b/src/TreeSelectContext.ts
@@ -5,7 +5,7 @@ import type useDataEntities from './hooks/useDataEntities';
 
 export interface TreeSelectContextProps {
   virtual?: boolean;
-  dropdownMatchSelectWidth?: boolean | number;
+  popupMatchSelectWidth?: boolean | number;
   listHeight: number;
   listItemHeight: number;
   listItemScrollOffset?: number;
diff --git a/src/hooks/useDataEntities.ts b/src/hooks/useDataEntities.ts
index 95e082d0..709b4321 100644
--- a/src/hooks/useDataEntities.ts
+++ b/src/hooks/useDataEntities.ts
@@ -2,7 +2,7 @@ import * as React from 'react';
 import { convertDataToEntities } from 'rc-tree/lib/utils/treeUtil';
 import type { DataEntity } from 'rc-tree/lib/interface';
 import type { SafeKey, FieldNames } from '../interface';
-import warning from 'rc-util/lib/warning';
+import warning from '@rc-component/util/lib/warning';
 import { isNil } from '../utils/valueUtil';
 
 export default (treeData: any, fieldNames: FieldNames) =>
diff --git a/src/utils/legacyUtil.tsx b/src/utils/legacyUtil.tsx
index b670f9a6..d7deef09 100644
--- a/src/utils/legacyUtil.tsx
+++ b/src/utils/legacyUtil.tsx
@@ -1,6 +1,6 @@
 import * as React from 'react';
-import toArray from 'rc-util/lib/Children/toArray';
-import warning from 'rc-util/lib/warning';
+import toArray from '@rc-component/util/lib/Children/toArray';
+import warning from '@rc-component/util/lib/warning';
 import type {
   DataNode,
   ChangeEventExtra,
diff --git a/src/utils/warningPropsUtil.ts b/src/utils/warningPropsUtil.ts
index 11c07d64..7ca3050d 100644
--- a/src/utils/warningPropsUtil.ts
+++ b/src/utils/warningPropsUtil.ts
@@ -1,4 +1,4 @@
-import warning from 'rc-util/lib/warning';
+import warning from '@rc-component/util/lib/warning';
 import type { TreeSelectProps } from '../TreeSelect';
 import { toArray } from './valueUtil';
 
diff --git a/tests/Select.SearchInput.spec.js b/tests/Select.SearchInput.spec.js
index cd2d15c3..c2c1cc42 100644
--- a/tests/Select.SearchInput.spec.js
+++ b/tests/Select.SearchInput.spec.js
@@ -3,7 +3,7 @@ import React, { useState } from 'react';
 import { mount } from 'enzyme';
 import { render, fireEvent } from '@testing-library/react';
 import TreeSelect, { TreeNode } from '../src';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
 
 describe('TreeSelect.SearchInput', () => {
   it('select item will clean searchInput', () => {
diff --git a/tests/Select.maxCount.spec.tsx b/tests/Select.maxCount.spec.tsx
index 1f9c74e9..74c8cec7 100644
--- a/tests/Select.maxCount.spec.tsx
+++ b/tests/Select.maxCount.spec.tsx
@@ -1,5 +1,5 @@
 import { render, fireEvent, within } from '@testing-library/react';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
 import { keyDown, keyUp } from './util';
 import React from 'react';
 import TreeSelect from '../src';
@@ -104,7 +104,7 @@ describe('TreeSelect.maxCount', () => {
   });
 
   it('should respect maxCount when checking parent node in treeCheckable mode', () => {
-    const treeData = [
+    const data = [
       {
         key: '0',
         value: '0',
@@ -120,7 +120,7 @@ describe('TreeSelect.maxCount', () => {
     const handleChange = jest.fn();
     const { container } = render(
       <TreeSelect
-        treeData={treeData}
+        treeData={data}
         treeCheckable
         multiple
         maxCount={2}
diff --git a/tests/Select.multiple.spec.js b/tests/Select.multiple.spec.js
index 5f2cebca..81a70898 100644
--- a/tests/Select.multiple.spec.js
+++ b/tests/Select.multiple.spec.js
@@ -1,7 +1,7 @@
 /* eslint-disable no-undef */
 import { render, fireEvent, within } from '@testing-library/react';
 import { mount } from 'enzyme';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
 import React from 'react';
 import TreeSelect, { TreeNode } from '../src';
 import focusTest from './shared/focusTest';
diff --git a/tests/Select.props.spec.js b/tests/Select.props.spec.js
index 6055a84a..d49c8b67 100644
--- a/tests/Select.props.spec.js
+++ b/tests/Select.props.spec.js
@@ -275,26 +275,26 @@ describe('TreeSelect.props', () => {
     expect(wrapper.find('.rc-tree-select-arrow').length).toBeFalsy();
   });
 
-  it('dropdownClassName', () => {
+  it('popupClassName', () => {
     const wrapper = mount(
       createOpenSelect({
-        dropdownClassName: 'test-dropdownClassName',
+        popupClassName: 'test-popupClassName',
       }),
     );
-    expect(wrapper.find('.test-dropdownClassName').length).toBeTruthy();
+    expect(wrapper.find('.test-popupClassName').length).toBeTruthy();
   });
 
-  it('dropdownStyle', () => {
+  it('popupStyle', () => {
     const style = {
       background: 'red',
     };
     const wrapper = mount(
       createOpenSelect({
-        dropdownClassName: 'test-dropdownClassName',
-        dropdownStyle: style,
+        popupClassName: 'test-popupClassName',
+        popupStyle: style,
       }),
     );
-    expect(wrapper.find('.test-dropdownClassName').first().props().style).toEqual(
+    expect(wrapper.find('.test-popupClassName').first().props().style).toEqual(
       expect.objectContaining(style),
     );
   });
@@ -556,7 +556,7 @@ describe('TreeSelect.props', () => {
         expect(onSelect).toHaveBeenCalledWith('smart', nodeMatcher(0));
       });
 
-      it('dropdownMatchSelectWidth={false} should turn off virtual list', () => {
+      it('popupMatchSelectWidth={false} should turn off virtual list', () => {
         const wrapper = mount(
           <TreeSelect style={{ width: 120 }} open treeDefaultExpandAll>
             <TreeNode value="parent 1" title="parent 1">
@@ -583,7 +583,7 @@ describe('TreeSelect.props', () => {
           </TreeSelect>,
         );
         expect(wrapper.find(Tree).props().virtual).toBe(true);
-        wrapper.setProps({ dropdownMatchSelectWidth: false });
+        wrapper.setProps({ popupMatchSelectWidth: false });
         expect(wrapper.find(Tree).props().virtual).toBe(false);
       });
     });
diff --git a/tests/Select.spec.tsx b/tests/Select.spec.tsx
index d7f52497..d466870c 100644
--- a/tests/Select.spec.tsx
+++ b/tests/Select.spec.tsx
@@ -1,11 +1,11 @@
 import { render } from '@testing-library/react';
 import { mount } from 'enzyme';
-import KeyCode from 'rc-util/lib/KeyCode';
+import KeyCode from '@rc-component/util/lib/KeyCode';
 import React from 'react';
 import TreeSelect, { TreeNode } from '../src';
 import focusTest from './shared/focusTest';
 import { selectNode } from './util';
-import type { BaseSelectRef } from 'rc-select';
+import type { BaseSelectRef } from '@rc-component/select';
 
 const mockScrollTo = jest.fn();
 
@@ -60,17 +60,18 @@ describe('TreeSelect.basic', () => {
     });
 
     it('renders tree correctly', () => {
-      const wrapper = mount(
+      const { container } = render(
         <TreeSelect
-          dropdownClassName="awesome"
-          dropdownStyle={{ width: 300 }}
+          popupClassName="awesome"
+          popupStyle={{ width: 300 }}
           multiple
           treeCheckable
           treeDefaultExpandAll
           treeData={treeData}
+          open
         />,
       );
-      expect(wrapper.render()).toMatchSnapshot();
+      expect(container).toMatchSnapshot();
     });
 
     it('not crash if no children', () => {
diff --git a/tests/Select.tree.spec.js b/tests/Select.tree.spec.js
index 914df004..71dbae7a 100644
--- a/tests/Select.tree.spec.js
+++ b/tests/Select.tree.spec.js
@@ -1,7 +1,7 @@
 /* eslint-disable no-undef, react/no-multi-comp, no-console */
 import React from 'react';
 import { mount } from 'enzyme';
-import { resetWarned } from 'rc-util/lib/warning';
+import { resetWarned } from '@rc-component/util/lib/warning';
 import TreeSelect, { TreeNode as SelectNode } from '../src';
 
 describe('TreeSelect.tree', () => {
diff --git a/tests/Select.warning.spec.js b/tests/Select.warning.spec.js
index 780c1ec0..8ab3f83b 100644
--- a/tests/Select.warning.spec.js
+++ b/tests/Select.warning.spec.js
@@ -1,6 +1,6 @@
 import React from 'react';
 import { mount } from 'enzyme';
-import { resetWarned } from 'rc-util/lib/warning';
+import { resetWarned } from '@rc-component/util/lib/warning';
 import TreeSelect from '../src';
 
 describe('TreeSelect.warning', () => {
@@ -56,22 +56,6 @@ describe('TreeSelect.warning', () => {
     );
   });
 
-  it('documentClickClose should removed', () => {
-    const wrapper = mount(
-      <TreeSelect
-        onDropdownVisibleChange={(_, { documentClickClose }) => {
-          expect(documentClickClose).toBeFalsy();
-        }}
-      />,
-    );
-
-    wrapper.openSelect();
-
-    expect(spy).toHaveBeenCalledWith(
-      'Warning: Second param of `onDropdownVisibleChange` has been removed.',
-    );
-  });
-
   it('warns on using maxCount with showCheckedStrategy=SHOW_ALL when treeCheckStrictly=false', () => {
     mount(<TreeSelect maxCount={2} showCheckedStrategy="SHOW_ALL" />);
     expect(spy).toHaveBeenCalledWith(
diff --git a/tests/__snapshots__/Select.checkable.spec.tsx.snap b/tests/__snapshots__/Select.checkable.spec.tsx.snap
index 7ee92e82..5fe525ec 100644
--- a/tests/__snapshots__/Select.checkable.spec.tsx.snap
+++ b/tests/__snapshots__/Select.checkable.spec.tsx.snap
@@ -250,7 +250,7 @@ exports[`TreeSelect.checkable uncheck remove by selector not treeCheckStrictly 1
                     </div>
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-checkbox-checked rc-tree-select-tree-treenode-leaf-last"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-checkbox-checked rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -472,7 +472,7 @@ exports[`TreeSelect.checkable uncheck remove by selector not treeCheckStrictly 2
                     </div>
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -772,7 +772,7 @@ exports[`TreeSelect.checkable uncheck remove by tree check 1`] = `
                     </div>
                     <div
                       aria-expanded="true"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-checkbox-checked rc-tree-select-tree-treenode-leaf-last filter-node"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-checkbox-checked rc-tree-select-tree-treenode-leaf-last filter-node rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -991,7 +991,7 @@ exports[`TreeSelect.checkable uncheck remove by tree check 2`] = `
                     </div>
                     <div
                       aria-expanded="true"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-leaf-last filter-node"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-leaf-last filter-node rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
diff --git a/tests/__snapshots__/Select.spec.tsx.snap b/tests/__snapshots__/Select.spec.tsx.snap
index 965c177a..fdc29aa1 100644
--- a/tests/__snapshots__/Select.spec.tsx.snap
+++ b/tests/__snapshots__/Select.spec.tsx.snap
@@ -87,7 +87,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly 1`] = `
                 >
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -141,7 +141,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly 1`] = `
                   </div>
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -172,7 +172,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly 1`] = `
                   </div>
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -299,7 +299,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly with falsy child 1`]
                 >
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -353,7 +353,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly with falsy child 1`]
                   </div>
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -384,7 +384,7 @@ exports[`TreeSelect.basic render renders TreeNode correctly with falsy child 1`]
                   </div>
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -519,55 +519,254 @@ exports[`TreeSelect.basic render renders disabled correctly 1`] = `
 `;
 
 exports[`TreeSelect.basic render renders tree correctly 1`] = `
-<div
-  class="rc-tree-select rc-tree-select-multiple rc-tree-select-show-search"
->
+<div>
   <div
-    class="rc-tree-select-selector"
+    class="rc-tree-select rc-tree-select-multiple rc-tree-select-open rc-tree-select-show-search"
   >
-    <span
-      class="rc-tree-select-selection-wrap"
+    <div
+      class="rc-tree-select-selector"
     >
-      <div
-        class="rc-tree-select-selection-overflow"
+      <span
+        class="rc-tree-select-selection-wrap"
       >
         <div
-          class="rc-tree-select-selection-overflow-item rc-tree-select-selection-overflow-item-suffix"
-          style="opacity: 1;"
+          class="rc-tree-select-selection-overflow"
         >
           <div
-            class="rc-tree-select-selection-search"
-            style="width: 0px;"
+            class="rc-tree-select-selection-overflow-item rc-tree-select-selection-overflow-item-suffix"
+            style="opacity: 1;"
           >
-            <input
-              aria-autocomplete="list"
-              aria-controls="rc_select_TEST_OR_SSR_list"
-              aria-expanded="false"
-              aria-haspopup="listbox"
-              aria-owns="rc_select_TEST_OR_SSR_list"
-              autocomplete="off"
-              class="rc-tree-select-selection-search-input"
-              id="rc_select_TEST_OR_SSR"
-              readonly=""
-              role="combobox"
-              style="opacity: 0;"
-              type="search"
-              unselectable="on"
-              value=""
-            />
-            <span
+            <div
+              class="rc-tree-select-selection-search"
+              style="width: 0px;"
+            >
+              <input
+                aria-autocomplete="list"
+                aria-controls="rc_select_TEST_OR_SSR_list"
+                aria-expanded="true"
+                aria-haspopup="listbox"
+                aria-owns="rc_select_TEST_OR_SSR_list"
+                autocomplete="off"
+                class="rc-tree-select-selection-search-input"
+                id="rc_select_TEST_OR_SSR"
+                role="combobox"
+                style=""
+                type="search"
+                value=""
+              />
+              <span
+                aria-hidden="true"
+                class="rc-tree-select-selection-search-mirror"
+              >
+                
+                 
+              </span>
+            </div>
+          </div>
+        </div>
+        <span
+          class="rc-tree-select-selection-placeholder"
+        />
+      </span>
+    </div>
+    <div
+      class="rc-tree-select-dropdown awesome rc-tree-select-dropdown-placement-bottomLeft"
+      style="--arrow-x: 0px; --arrow-y: 0px; left: -1000vw; top: -1000vh; box-sizing: border-box; width: 300px;"
+    >
+      <div>
+        <div>
+          <span
+            aria-live="assertive"
+            style="width: 0px; height: 0px; display: flex; overflow: hidden; opacity: 0; border: 0px; padding: 0px; margin: 0px;"
+          >
+            0
+          </span>
+          <div
+            class="rc-tree-select-tree rc-tree-select-tree-active-focused"
+          >
+            <div>
+              <input
+                aria-label="for screen reader"
+                disabled=""
+                style="width: 0px; height: 0px; display: flex; overflow: hidden; opacity: 0; border: 0px; padding: 0px; margin: 0px;"
+                value=""
+              />
+            </div>
+            <div
               aria-hidden="true"
-              class="rc-tree-select-selection-search-mirror"
+              class="rc-tree-select-tree-treenode"
+              style="position: absolute; pointer-events: none; visibility: hidden; height: 0px; overflow: hidden; border: 0px; padding: 0px;"
             >
-               
-            </span>
+              <div
+                class="rc-tree-select-tree-indent"
+              >
+                <div
+                  class="rc-tree-select-tree-indent-unit"
+                />
+              </div>
+            </div>
+            <div
+              class="rc-tree-select-tree-list"
+              role="tree"
+              style="position: relative;"
+            >
+              <div
+                class="rc-tree-select-tree-list-holder"
+                style="max-height: 200px; overflow-y: auto;"
+              >
+                <div>
+                  <div
+                    class="rc-tree-select-tree-list-holder-inner"
+                    style="display: flex; flex-direction: column;"
+                  >
+                    <div
+                      aria-expanded="false"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf"
+                      draggable="false"
+                      role="treeitem"
+                    >
+                      <span
+                        aria-hidden="true"
+                        class="rc-tree-select-tree-indent"
+                      />
+                      <span
+                        class="rc-tree-select-tree-switcher rc-tree-select-tree-switcher-noop"
+                      />
+                      <span
+                        aria-checked="false"
+                        aria-label="Select 0 label"
+                        class="rc-tree-select-tree-checkbox"
+                        role="checkbox"
+                      />
+                      <span
+                        class="rc-tree-select-tree-node-content-wrapper rc-tree-select-tree-node-content-wrapper-normal"
+                        title="0 label"
+                      >
+                        <span
+                          class="rc-tree-select-tree-iconEle rc-tree-select-tree-icon__docu"
+                        />
+                        <span
+                          class="rc-tree-select-tree-title"
+                        >
+                          0 label
+                        </span>
+                      </span>
+                    </div>
+                    <div
+                      aria-expanded="true"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-leaf-last"
+                      draggable="false"
+                      role="treeitem"
+                    >
+                      <span
+                        aria-hidden="true"
+                        class="rc-tree-select-tree-indent"
+                      />
+                      <span
+                        class="rc-tree-select-tree-switcher rc-tree-select-tree-switcher_open"
+                      />
+                      <span
+                        aria-checked="false"
+                        aria-label="Select 1 label"
+                        class="rc-tree-select-tree-checkbox"
+                        role="checkbox"
+                      />
+                      <span
+                        class="rc-tree-select-tree-node-content-wrapper rc-tree-select-tree-node-content-wrapper-open"
+                        title="1 label"
+                      >
+                        <span
+                          class="rc-tree-select-tree-iconEle rc-tree-select-tree-icon__open"
+                        />
+                        <span
+                          class="rc-tree-select-tree-title"
+                        >
+                          1 label
+                        </span>
+                      </span>
+                    </div>
+                    <div
+                      aria-expanded="false"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf"
+                      draggable="false"
+                      role="treeitem"
+                    >
+                      <span
+                        aria-hidden="true"
+                        class="rc-tree-select-tree-indent"
+                      >
+                        <span
+                          class="rc-tree-select-tree-indent-unit rc-tree-select-tree-indent-unit-end"
+                        />
+                      </span>
+                      <span
+                        class="rc-tree-select-tree-switcher rc-tree-select-tree-switcher-noop"
+                      />
+                      <span
+                        aria-checked="false"
+                        aria-label="Select 10 label"
+                        class="rc-tree-select-tree-checkbox"
+                        role="checkbox"
+                      />
+                      <span
+                        class="rc-tree-select-tree-node-content-wrapper rc-tree-select-tree-node-content-wrapper-normal"
+                        title="10 label"
+                      >
+                        <span
+                          class="rc-tree-select-tree-iconEle rc-tree-select-tree-icon__docu"
+                        />
+                        <span
+                          class="rc-tree-select-tree-title"
+                        >
+                          10 label
+                        </span>
+                      </span>
+                    </div>
+                    <div
+                      aria-expanded="false"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
+                      draggable="false"
+                      role="treeitem"
+                    >
+                      <span
+                        aria-hidden="true"
+                        class="rc-tree-select-tree-indent"
+                      >
+                        <span
+                          class="rc-tree-select-tree-indent-unit rc-tree-select-tree-indent-unit-end"
+                        />
+                      </span>
+                      <span
+                        class="rc-tree-select-tree-switcher rc-tree-select-tree-switcher-noop"
+                      />
+                      <span
+                        aria-checked="false"
+                        aria-label="Select 11 label"
+                        class="rc-tree-select-tree-checkbox"
+                        role="checkbox"
+                      />
+                      <span
+                        class="rc-tree-select-tree-node-content-wrapper rc-tree-select-tree-node-content-wrapper-normal"
+                        title="11 label"
+                      >
+                        <span
+                          class="rc-tree-select-tree-iconEle rc-tree-select-tree-icon__docu"
+                        />
+                        <span
+                          class="rc-tree-select-tree-title"
+                        >
+                          11 label
+                        </span>
+                      </span>
+                    </div>
+                  </div>
+                </div>
+              </div>
+            </div>
           </div>
         </div>
       </div>
-      <span
-        class="rc-tree-select-selection-placeholder"
-      />
-    </span>
+    </div>
   </div>
 </div>
 `;
@@ -687,7 +886,7 @@ exports[`TreeSelect.basic render renders treeDataSimpleMode correctly 1`] = `
                     </div>
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -814,7 +1013,7 @@ exports[`TreeSelect.basic search nodes check tree changed by filter 1`] = `
                   >
                     <div
                       aria-expanded="true"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf-last filter-node"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf-last filter-node rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -937,7 +1136,7 @@ exports[`TreeSelect.basic search nodes check tree changed by filter 2`] = `
                   >
                     <div
                       aria-expanded="true"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-active"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-open rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -964,7 +1163,7 @@ exports[`TreeSelect.basic search nodes check tree changed by filter 2`] = `
                     </div>
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -1087,7 +1286,7 @@ exports[`TreeSelect.basic search nodes filter node but not remove then 1`] = `
                   >
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active filter-node"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active filter-node rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -1114,7 +1313,7 @@ exports[`TreeSelect.basic search nodes filter node but not remove then 1`] = `
                     </div>
                     <div
                       aria-expanded="false"
-                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                      class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                       draggable="false"
                       role="treeitem"
                     >
@@ -1235,7 +1434,7 @@ exports[`TreeSelect.basic search nodes renders search input 1`] = `
                 >
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-active rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >
@@ -1262,7 +1461,7 @@ exports[`TreeSelect.basic search nodes renders search input 1`] = `
                   </div>
                   <div
                     aria-expanded="false"
-                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last"
+                    class="rc-tree-select-tree-treenode rc-tree-select-tree-treenode-switcher-close rc-tree-select-tree-treenode-leaf-last rc-tree-select-tree-treenode-leaf"
                     draggable="false"
                     role="treeitem"
                   >