@@ -181,31 +181,7 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
181
181
return null ;
182
182
} ;
183
183
184
- // ========================== Active ==========================
185
- const [ activeKey , setActiveKey ] = React . useState < Key > ( null ) ;
186
- const activeEntity = keyEntities [ activeKey as SafeKey ] ;
187
-
188
- React . useEffect ( ( ) => {
189
- if ( ! open ) {
190
- return ;
191
- }
192
- let nextActiveKey = null ;
193
-
194
- const getFirstNode = ( ) => {
195
- const firstNode = getFirstMatchingNode ( memoTreeData ) ;
196
- return firstNode ? firstNode [ fieldNames . value ] : null ;
197
- } ;
198
-
199
- // single mode active first checked node
200
- if ( ! multiple && checkedKeys . length && ! searchValue ) {
201
- nextActiveKey = checkedKeys [ 0 ] ;
202
- } else {
203
- nextActiveKey = getFirstNode ( ) ;
204
- }
205
-
206
- setActiveKey ( nextActiveKey ) ;
207
- } , [ open , searchValue ] ) ;
208
-
184
+ // ========================== Get Next Matching Node ==========================
209
185
const getNextMatchingNode = (
210
186
nodes : EventDataNode < any > [ ] ,
211
187
currentKey : Key | null ,
@@ -253,6 +229,31 @@ const OptionList: React.ForwardRefRenderFunction<ReviseRefOptionListProps> = (_,
253
229
return availableNodes [ nextIndex ] ;
254
230
} ;
255
231
232
+ // ========================== Active ==========================
233
+ const [ activeKey , setActiveKey ] = React . useState < Key > ( null ) ;
234
+ const activeEntity = keyEntities [ activeKey as SafeKey ] ;
235
+
236
+ React . useEffect ( ( ) => {
237
+ if ( ! open ) {
238
+ return ;
239
+ }
240
+ let nextActiveKey = null ;
241
+
242
+ const getFirstNode = ( ) => {
243
+ const firstNode = getFirstMatchingNode ( memoTreeData ) ;
244
+ return firstNode ? firstNode [ fieldNames . value ] : null ;
245
+ } ;
246
+
247
+ // single mode active first checked node
248
+ if ( ! multiple && checkedKeys . length && ! searchValue ) {
249
+ nextActiveKey = checkedKeys [ 0 ] ;
250
+ } else {
251
+ nextActiveKey = getFirstNode ( ) ;
252
+ }
253
+
254
+ setActiveKey ( nextActiveKey ) ;
255
+ } , [ open , searchValue ] ) ;
256
+
256
257
// ========================= Keyboard =========================
257
258
React . useImperativeHandle ( ref , ( ) => ( {
258
259
scrollTo : treeRef . current ?. scrollTo ,
0 commit comments