@rc-component/select 1.6.4 → 1.6.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/es/BaseSelect/index.js
CHANGED
|
@@ -379,6 +379,7 @@ const BaseSelect = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
379
379
|
notFoundContent,
|
|
380
380
|
open: mergedOpen,
|
|
381
381
|
triggerOpen: mergedOpen,
|
|
382
|
+
rawOpen,
|
|
382
383
|
id,
|
|
383
384
|
showSearch,
|
|
384
385
|
multiple,
|
|
@@ -387,7 +388,7 @@ const BaseSelect = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
387
388
|
styles,
|
|
388
389
|
classNames,
|
|
389
390
|
lockOptions
|
|
390
|
-
}), [props, notFoundContent, triggerOpen, id, showSearch, multiple, mergedOpen, showScrollBar, styles, classNames, lockOptions]);
|
|
391
|
+
}), [props, notFoundContent, triggerOpen, id, showSearch, multiple, mergedOpen, rawOpen, showScrollBar, styles, classNames, lockOptions]);
|
|
391
392
|
|
|
392
393
|
// ==================================================================
|
|
393
394
|
// == Render ==
|
|
@@ -30,6 +30,7 @@ export default /*#__PURE__*/React.forwardRef(function MultipleContent({
|
|
|
30
30
|
disabled,
|
|
31
31
|
showSearch,
|
|
32
32
|
triggerOpen,
|
|
33
|
+
rawOpen,
|
|
33
34
|
toggleOpen,
|
|
34
35
|
autoClearSearchValue,
|
|
35
36
|
tagRender: tagRenderFromContext,
|
|
@@ -43,8 +44,9 @@ export default /*#__PURE__*/React.forwardRef(function MultipleContent({
|
|
|
43
44
|
|
|
44
45
|
// ===================== Search ======================
|
|
45
46
|
// Apply autoClearSearchValue logic: when dropdown is closed and autoClearSearchValue is not false (default true), clear search value
|
|
47
|
+
// Use rawOpen to avoid clearing search when emptyListContent blocks open
|
|
46
48
|
let computedSearchValue = searchValue;
|
|
47
|
-
if (!
|
|
49
|
+
if (!rawOpen && mode === 'multiple' && autoClearSearchValue !== false) {
|
|
48
50
|
computedSearchValue = '';
|
|
49
51
|
}
|
|
50
52
|
const inputValue = showSearch ? computedSearchValue || '' : '';
|
|
@@ -6,6 +6,7 @@ import * as React from 'react';
|
|
|
6
6
|
import type { BaseSelectProps } from '../BaseSelect';
|
|
7
7
|
export interface BaseSelectContextProps extends BaseSelectProps {
|
|
8
8
|
triggerOpen: boolean;
|
|
9
|
+
rawOpen: boolean;
|
|
9
10
|
multiple: boolean;
|
|
10
11
|
toggleOpen: (open?: boolean) => void;
|
|
11
12
|
lockOptions: boolean;
|
package/lib/BaseSelect/index.js
CHANGED
|
@@ -388,6 +388,7 @@ const BaseSelect = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
388
388
|
notFoundContent,
|
|
389
389
|
open: mergedOpen,
|
|
390
390
|
triggerOpen: mergedOpen,
|
|
391
|
+
rawOpen,
|
|
391
392
|
id,
|
|
392
393
|
showSearch,
|
|
393
394
|
multiple,
|
|
@@ -396,7 +397,7 @@ const BaseSelect = /*#__PURE__*/React.forwardRef((props, ref) => {
|
|
|
396
397
|
styles,
|
|
397
398
|
classNames,
|
|
398
399
|
lockOptions
|
|
399
|
-
}), [props, notFoundContent, triggerOpen, id, showSearch, multiple, mergedOpen, showScrollBar, styles, classNames, lockOptions]);
|
|
400
|
+
}), [props, notFoundContent, triggerOpen, id, showSearch, multiple, mergedOpen, rawOpen, showScrollBar, styles, classNames, lockOptions]);
|
|
400
401
|
|
|
401
402
|
// ==================================================================
|
|
402
403
|
// == Render ==
|
|
@@ -39,6 +39,7 @@ var _default = exports.default = /*#__PURE__*/React.forwardRef(function Multiple
|
|
|
39
39
|
disabled,
|
|
40
40
|
showSearch,
|
|
41
41
|
triggerOpen,
|
|
42
|
+
rawOpen,
|
|
42
43
|
toggleOpen,
|
|
43
44
|
autoClearSearchValue,
|
|
44
45
|
tagRender: tagRenderFromContext,
|
|
@@ -52,8 +53,9 @@ var _default = exports.default = /*#__PURE__*/React.forwardRef(function Multiple
|
|
|
52
53
|
|
|
53
54
|
// ===================== Search ======================
|
|
54
55
|
// Apply autoClearSearchValue logic: when dropdown is closed and autoClearSearchValue is not false (default true), clear search value
|
|
56
|
+
// Use rawOpen to avoid clearing search when emptyListContent blocks open
|
|
55
57
|
let computedSearchValue = searchValue;
|
|
56
|
-
if (!
|
|
58
|
+
if (!rawOpen && mode === 'multiple' && autoClearSearchValue !== false) {
|
|
57
59
|
computedSearchValue = '';
|
|
58
60
|
}
|
|
59
61
|
const inputValue = showSearch ? computedSearchValue || '' : '';
|
|
@@ -6,6 +6,7 @@ import * as React from 'react';
|
|
|
6
6
|
import type { BaseSelectProps } from '../BaseSelect';
|
|
7
7
|
export interface BaseSelectContextProps extends BaseSelectProps {
|
|
8
8
|
triggerOpen: boolean;
|
|
9
|
+
rawOpen: boolean;
|
|
9
10
|
multiple: boolean;
|
|
10
11
|
toggleOpen: (open?: boolean) => void;
|
|
11
12
|
lockOptions: boolean;
|