@@ -70,8 +70,6 @@ export type RawValueType = string | number;
70
70
export interface LabelInValueType {
71
71
label : React . ReactNode ;
72
72
value : RawValueType ;
73
- /** @deprecated `key` is useless since it should always same as `value` */
74
- key ?: React . Key ;
75
73
}
76
74
77
75
export type DraftValueType =
@@ -119,9 +117,6 @@ export interface SelectProps<ValueType = any, OptionType extends BaseOptionType
119
117
// >>> Field Names
120
118
fieldNames ?: FieldNames ;
121
119
122
- // >>> Search
123
- /** @deprecated Use `searchValue` instead */
124
- inputValue ?: string ;
125
120
searchValue ?: string ;
126
121
onSearch ?: ( value : string ) => void ;
127
122
autoClearSearchValue ?: boolean ;
@@ -178,7 +173,6 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
178
173
fieldNames,
179
174
180
175
// Search
181
- inputValue,
182
176
searchValue,
183
177
onSearch,
184
178
autoClearSearchValue = true ,
@@ -239,7 +233,7 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
239
233
240
234
// =========================== Search ===========================
241
235
const [ mergedSearchValue , setSearchValue ] = useMergedState ( '' , {
242
- value : searchValue !== undefined ? searchValue : inputValue ,
236
+ value : searchValue ,
243
237
postState : ( search ) => search || '' ,
244
238
} ) ;
245
239
@@ -263,25 +257,22 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
263
257
return valueList . map ( ( val ) => {
264
258
let rawValue : RawValueType ;
265
259
let rawLabel : React . ReactNode ;
266
- let rawKey : React . Key ;
267
260
let rawDisabled : boolean | undefined ;
268
261
let rawTitle : string ;
269
262
270
263
// Fill label & value
271
264
if ( isRawValue ( val ) ) {
272
265
rawValue = val ;
273
266
} else {
274
- rawKey = val . key ;
275
267
rawLabel = val . label ;
276
- rawValue = val . value ?? ( rawKey as RawValueType ) ;
268
+ rawValue = val . value ;
277
269
}
278
270
279
271
const option = valueOptions . get ( rawValue ) ;
280
272
if ( option ) {
281
273
// Fill missing props
282
274
if ( rawLabel === undefined )
283
275
rawLabel = option ?. [ optionLabelProp || mergedFieldNames . label ] ;
284
- if ( rawKey === undefined ) rawKey = option ?. key ?? rawValue ;
285
276
rawDisabled = option ?. disabled ;
286
277
rawTitle = option ?. title ;
287
278
@@ -302,7 +293,7 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
302
293
return {
303
294
label : rawLabel ,
304
295
value : rawValue ,
305
- key : rawKey ,
296
+ key : rawValue ,
306
297
disabled : rawDisabled ,
307
298
title : rawTitle ,
308
299
} ;
@@ -473,7 +464,10 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
473
464
( labeledValues . length !== mergedValues . length ||
474
465
labeledValues . some ( ( newVal , index ) => mergedValues [ index ] ?. value !== newVal ?. value ) )
475
466
) {
476
- const returnValues = labelInValue ? labeledValues : labeledValues . map ( ( v ) => v . value ) ;
467
+ const returnValues = labelInValue
468
+ ? labeledValues . map ( ( { label : l , value : v } ) => ( { label : l , value : v } ) )
469
+ : labeledValues . map ( ( v ) => v . value ) ;
470
+
477
471
const returnOptions = labeledValues . map ( ( v ) =>
478
472
injectPropsWithOption ( getMixedOption ( v . value ) ) ,
479
473
) ;
@@ -513,7 +507,6 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
513
507
? {
514
508
label : option ?. [ mergedFieldNames . label ] ,
515
509
value : val ,
516
- key : option ?. key ?? val ,
517
510
}
518
511
: val ,
519
512
injectPropsWithOption ( option ) ,
@@ -547,7 +540,6 @@ const Select = React.forwardRef<BaseSelectRef, SelectProps<any, DefaultOptionTyp
547
540
548
541
// Clean search value if single or configured
549
542
if ( mode === 'combobox' ) {
550
- // setSearchValue(String(val));
551
543
setActiveValue ( '' ) ;
552
544
} else if ( ! isMultiple || autoClearSearchValue ) {
553
545
setSearchValue ( '' ) ;
0 commit comments