@salutejs/plasma-new-hope 0.141.0-canary.1420.10717002054.0 → 0.141.0-canary.1422.10721189833.0
Sign up to get free protection for your applications and to get access to all the features.
- package/cjs/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/cjs/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/cjs/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/cjs/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
- package/emotion/cjs/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/emotion/cjs/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/emotion/cjs/examples/plasma_b2c/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/emotion/cjs/examples/plasma_web/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/emotion/cjs/examples/plasma_web/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/emotion/es/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/emotion/es/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/emotion/es/examples/plasma_b2c/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/emotion/es/examples/plasma_b2c/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/emotion/es/examples/plasma_web/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/emotion/es/examples/plasma_web/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/es/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/es/components/Combobox/ComboboxNew/Combobox.js.map +1 -1
- package/es/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/es/components/Combobox/ComboboxOld/Combobox.js.map +1 -1
- package/package.json +4 -4
- package/styled-components/cjs/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/styled-components/cjs/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/styled-components/cjs/examples/plasma_b2c/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/styled-components/cjs/examples/plasma_web/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/styled-components/cjs/examples/plasma_web/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/styled-components/es/components/Combobox/ComboboxNew/Combobox.js +6 -4
- package/styled-components/es/components/Combobox/ComboboxOld/Combobox.js +15 -8
- package/styled-components/es/examples/plasma_b2c/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/styled-components/es/examples/plasma_b2c/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/styled-components/es/examples/plasma_web/components/Combobox/ComboboxNew/Combobox.stories.tsx +2 -0
- package/styled-components/es/examples/plasma_web/components/Combobox/ComboboxOld/Combobox.stories.tsx +18 -3
- package/types/components/Combobox/ComboboxNew/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts +7 -1
- package/types/components/Combobox/ComboboxNew/Combobox.types.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxOld/Combobox.d.ts.map +1 -1
- package/types/components/Combobox/ComboboxOld/Combobox.types.d.ts +6 -0
- package/types/components/Combobox/ComboboxOld/Combobox.types.d.ts.map +1 -1
package/emotion/cjs/examples/plasma_b2c/components/Combobox/ComboboxOld/Combobox.stories.tsx
CHANGED
@@ -47,6 +47,7 @@ const meta: Meta<StorySelectProps> = {
|
|
47
47
|
usePortal: false,
|
48
48
|
disabled: false,
|
49
49
|
readOnly: false,
|
50
|
+
alwaysOpened: false,
|
50
51
|
label: 'Label',
|
51
52
|
placeholder: 'Placeholder',
|
52
53
|
enumerationType: 'comma',
|
@@ -81,7 +82,7 @@ const getSelectItems = (slug: string, elemCount: number) =>
|
|
81
82
|
}));
|
82
83
|
|
83
84
|
const StorySingle = (args: StorySelectProps) => {
|
84
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
85
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
85
86
|
|
86
87
|
const [value, setValue] = useState<ComboboxPrimitiveValue | undefined>('item_0');
|
87
88
|
|
@@ -104,6 +105,7 @@ const StorySingle = (args: StorySelectProps) => {
|
|
104
105
|
view={view}
|
105
106
|
disabled={disabled}
|
106
107
|
readOnly={readOnly}
|
108
|
+
alwaysOpened={alwaysOpened}
|
107
109
|
onChangeValue={onChangeValue}
|
108
110
|
>
|
109
111
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -129,7 +131,18 @@ export const Single: StoryObj<StorySelectProps> = {
|
|
129
131
|
};
|
130
132
|
|
131
133
|
const StoryMultiple = (args: StorySelectProps) => {
|
132
|
-
const {
|
134
|
+
const {
|
135
|
+
usePortal,
|
136
|
+
placement,
|
137
|
+
label,
|
138
|
+
placeholder,
|
139
|
+
readOnly,
|
140
|
+
disabled,
|
141
|
+
enumerationType,
|
142
|
+
alwaysOpened,
|
143
|
+
size = 'm',
|
144
|
+
view,
|
145
|
+
} = args;
|
133
146
|
|
134
147
|
const [value, setValue] = useState<Array<ComboboxPrimitiveValue> | undefined>(['item_2', 'item_3']);
|
135
148
|
|
@@ -153,6 +166,7 @@ const StoryMultiple = (args: StorySelectProps) => {
|
|
153
166
|
view={view}
|
154
167
|
disabled={disabled}
|
155
168
|
readOnly={readOnly}
|
169
|
+
alwaysOpened={alwaysOpened}
|
156
170
|
onChangeValue={onChangeValue}
|
157
171
|
>
|
158
172
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -174,7 +188,7 @@ export const Multiple: StoryObj<StorySelectProps> = {
|
|
174
188
|
};
|
175
189
|
|
176
190
|
const StoryAddCustomItem = (args: StorySelectProps) => {
|
177
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
191
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
178
192
|
|
179
193
|
const [opened, setOpened] = useState(false);
|
180
194
|
const [items, setItems] = useState(getSelectItems('item', 1));
|
@@ -225,6 +239,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
|
|
225
239
|
disabled={disabled}
|
226
240
|
readOnly={readOnly}
|
227
241
|
opened={opened}
|
242
|
+
alwaysOpened={alwaysOpened}
|
228
243
|
onToggle={onToggle}
|
229
244
|
onChangeValue={onChangeValue}
|
230
245
|
onKeyDown={onKeyDown}
|
package/emotion/cjs/examples/plasma_web/components/Combobox/ComboboxNew/Combobox.stories.tsx
CHANGED
@@ -73,6 +73,7 @@ const meta: Meta<StorySelectProps> = {
|
|
73
73
|
variant: 'normal',
|
74
74
|
disabled: false,
|
75
75
|
readOnly: false,
|
76
|
+
alwaysOpened: false,
|
76
77
|
},
|
77
78
|
parameters: {
|
78
79
|
controls: {
|
@@ -86,6 +87,7 @@ const meta: Meta<StorySelectProps> = {
|
|
86
87
|
'helperText',
|
87
88
|
'isTargetAmount',
|
88
89
|
'closeAfterSelect',
|
90
|
+
'alwaysOpened',
|
89
91
|
'variant',
|
90
92
|
'disabled',
|
91
93
|
'readOnly',
|
package/emotion/cjs/examples/plasma_web/components/Combobox/ComboboxOld/Combobox.stories.tsx
CHANGED
@@ -47,6 +47,7 @@ const meta: Meta<StorySelectProps> = {
|
|
47
47
|
usePortal: false,
|
48
48
|
disabled: false,
|
49
49
|
readOnly: false,
|
50
|
+
alwaysOpened: false,
|
50
51
|
label: 'Label',
|
51
52
|
placeholder: 'Placeholder',
|
52
53
|
enumerationType: 'comma',
|
@@ -81,7 +82,7 @@ const getSelectItems = (slug: string, elemCount: number) =>
|
|
81
82
|
}));
|
82
83
|
|
83
84
|
const StorySingle = (args: StorySelectProps) => {
|
84
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
85
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
85
86
|
|
86
87
|
const [value, setValue] = useState<ComboboxPrimitiveValue | undefined>('item_0');
|
87
88
|
|
@@ -104,6 +105,7 @@ const StorySingle = (args: StorySelectProps) => {
|
|
104
105
|
view={view}
|
105
106
|
disabled={disabled}
|
106
107
|
readOnly={readOnly}
|
108
|
+
alwaysOpened={alwaysOpened}
|
107
109
|
onChangeValue={onChangeValue}
|
108
110
|
>
|
109
111
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -129,7 +131,18 @@ export const Single: StoryObj<StorySelectProps> = {
|
|
129
131
|
};
|
130
132
|
|
131
133
|
const StoryMultiple = (args: StorySelectProps) => {
|
132
|
-
const {
|
134
|
+
const {
|
135
|
+
usePortal,
|
136
|
+
placement,
|
137
|
+
label,
|
138
|
+
placeholder,
|
139
|
+
readOnly,
|
140
|
+
disabled,
|
141
|
+
enumerationType,
|
142
|
+
alwaysOpened,
|
143
|
+
size = 'm',
|
144
|
+
view,
|
145
|
+
} = args;
|
133
146
|
|
134
147
|
const [value, setValue] = useState<Array<ComboboxPrimitiveValue> | undefined>(['item_2', 'item_3']);
|
135
148
|
|
@@ -153,6 +166,7 @@ const StoryMultiple = (args: StorySelectProps) => {
|
|
153
166
|
view={view}
|
154
167
|
disabled={disabled}
|
155
168
|
readOnly={readOnly}
|
169
|
+
alwaysOpened={alwaysOpened}
|
156
170
|
onChangeValue={onChangeValue}
|
157
171
|
>
|
158
172
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -174,7 +188,7 @@ export const Multiple: StoryObj<StorySelectProps> = {
|
|
174
188
|
};
|
175
189
|
|
176
190
|
const StoryAddCustomItem = (args: StorySelectProps) => {
|
177
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
191
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
178
192
|
|
179
193
|
const [opened, setOpened] = useState(false);
|
180
194
|
const [items, setItems] = useState(getSelectItems('item', 1));
|
@@ -225,6 +239,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
|
|
225
239
|
disabled={disabled}
|
226
240
|
readOnly={readOnly}
|
227
241
|
opened={opened}
|
242
|
+
alwaysOpened={alwaysOpened}
|
228
243
|
onToggle={onToggle}
|
229
244
|
onChangeValue={onChangeValue}
|
230
245
|
onKeyDown={onKeyDown}
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "filter", "closeAfterSelect"];
|
1
|
+
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "alwaysOpened", "filter", "closeAfterSelect"];
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -58,6 +58,8 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
58
58
|
readOnly = _props$readOnly === void 0 ? false : _props$readOnly,
|
59
59
|
_props$disabled = props.disabled,
|
60
60
|
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
61
|
+
_props$alwaysOpened = props.alwaysOpened,
|
62
|
+
alwaysOpened = _props$alwaysOpened === void 0 ? false : _props$alwaysOpened,
|
61
63
|
filter = props.filter,
|
62
64
|
outerCloseAfterSelect = props.closeAfterSelect,
|
63
65
|
rest = _objectWithoutProperties(props, _excluded);
|
@@ -107,7 +109,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
107
109
|
_useState6 = _slicedToArray(_useState5, 2),
|
108
110
|
checked = _useState6[0],
|
109
111
|
setChecked = _useState6[1];
|
110
|
-
var isCurrentListOpen = Boolean(path[0]);
|
112
|
+
var isCurrentListOpen = alwaysOpened || Boolean(path[0]);
|
111
113
|
var activeDescendantItemValue = ((_getItemByFocused = getItemByFocused(focusedPath, focusedToValueMap)) === null || _getItemByFocused === void 0 ? void 0 : _getItemByFocused.value) || '';
|
112
114
|
var withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;
|
113
115
|
var closeAfterSelect = outerCloseAfterSelect !== null && outerCloseAfterSelect !== void 0 ? outerCloseAfterSelect : !multiple;
|
@@ -217,7 +219,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
217
219
|
newValues.push(item.value);
|
218
220
|
}
|
219
221
|
});
|
220
|
-
if (closeAfterSelect) {
|
222
|
+
if (!alwaysOpened && closeAfterSelect) {
|
221
223
|
dispatchPath({
|
222
224
|
type: 'reset'
|
223
225
|
});
|
@@ -262,7 +264,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
262
264
|
updateSingleAncestors(item, checkedCopy, 'dot');
|
263
265
|
}
|
264
266
|
setTextValue(isCurrentChecked ? '' : item.label);
|
265
|
-
if (closeAfterSelect) {
|
267
|
+
if (!alwaysOpened && closeAfterSelect) {
|
266
268
|
dispatchPath({
|
267
269
|
type: 'reset'
|
268
270
|
});
|
@@ -1,4 +1,4 @@
|
|
1
|
-
var _excluded = ["name", "form", "readOnly", "disabled", "label", "placeholder", "id", "children", "role", "view", "size", "frame", "usePortal", "negativeResultContent", "enumerationType", "opened", "placement", "onToggle", "onKeyDown", "filterFunction"];
|
1
|
+
var _excluded = ["name", "form", "readOnly", "disabled", "label", "placeholder", "id", "children", "role", "view", "size", "frame", "usePortal", "negativeResultContent", "enumerationType", "opened", "alwaysOpened", "placement", "onToggle", "onKeyDown", "filterFunction"];
|
2
2
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
3
3
|
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
4
4
|
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
@@ -43,6 +43,8 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
43
43
|
enumerationType = _ref$enumerationType === void 0 ? 'comma' : _ref$enumerationType,
|
44
44
|
_ref$opened = _ref.opened,
|
45
45
|
opened = _ref$opened === void 0 ? false : _ref$opened,
|
46
|
+
_ref$alwaysOpened = _ref.alwaysOpened,
|
47
|
+
alwaysOpened = _ref$alwaysOpened === void 0 ? false : _ref$alwaysOpened,
|
46
48
|
_ref$placement = _ref.placement,
|
47
49
|
placement = _ref$placement === void 0 ? 'bottom' : _ref$placement,
|
48
50
|
onToggle = _ref.onToggle,
|
@@ -73,7 +75,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
73
75
|
itemsRefs: itemsRefs,
|
74
76
|
inputRef: inputRef
|
75
77
|
};
|
76
|
-
var _useState3 = useState(opened),
|
78
|
+
var _useState3 = useState(alwaysOpened || opened),
|
77
79
|
_useState4 = _slicedToArray(_useState3, 2),
|
78
80
|
isVisible = _useState4[0],
|
79
81
|
setIsVisible = _useState4[1];
|
@@ -99,11 +101,11 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
99
101
|
if (disabled || readOnly) {
|
100
102
|
return;
|
101
103
|
}
|
102
|
-
setIsVisible(opened);
|
103
|
-
}, [opened, disabled, readOnly]);
|
104
|
+
setIsVisible(alwaysOpened || opened);
|
105
|
+
}, [opened, alwaysOpened, disabled, readOnly]);
|
104
106
|
useEffect(function () {
|
105
107
|
// INFO: Для кейсов, когда значение выбрано и нужно вывести весь список
|
106
|
-
if (opened) {
|
108
|
+
if (alwaysOpened || opened) {
|
107
109
|
setFilterValue('');
|
108
110
|
}
|
109
111
|
}, []);
|
@@ -117,10 +119,10 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
117
119
|
setFilterValue('');
|
118
120
|
}
|
119
121
|
if (onToggle) {
|
120
|
-
onToggle(openValue, event);
|
122
|
+
onToggle(alwaysOpened || openValue, event);
|
121
123
|
return;
|
122
124
|
}
|
123
|
-
setIsVisible(openValue);
|
125
|
+
setIsVisible(alwaysOpened || openValue);
|
124
126
|
};
|
125
127
|
var closedWithoutChanges = useRef(true);
|
126
128
|
var updateValue = function updateValue(item, event) {
|
@@ -134,7 +136,7 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
134
136
|
}
|
135
137
|
var newSelected = getNewSelected(rest.value, newValue, 'single');
|
136
138
|
(_rest$onChangeValue2 = rest.onChangeValue) === null || _rest$onChangeValue2 === void 0 || _rest$onChangeValue2.call(rest, newSelected);
|
137
|
-
onInnerToggle === null || onInnerToggle === void 0 || onInnerToggle(false, event);
|
139
|
+
onInnerToggle === null || onInnerToggle === void 0 || onInnerToggle(alwaysOpened || false, event);
|
138
140
|
closedWithoutChanges.current = false;
|
139
141
|
};
|
140
142
|
var onClickChildrenItem = function onClickChildrenItem(event) {
|
@@ -178,6 +180,11 @@ export var comboboxRoot = function comboboxRoot(Root) {
|
|
178
180
|
onKeyDown === null || onKeyDown === void 0 || onKeyDown(event);
|
179
181
|
onKeyDownTarget(event);
|
180
182
|
};
|
183
|
+
useEffect(function () {
|
184
|
+
if (alwaysOpened && rest.valueType === 'single') {
|
185
|
+
setSearch(String(value));
|
186
|
+
}
|
187
|
+
}, [value, alwaysOpened]);
|
181
188
|
return /*#__PURE__*/React.createElement(StyledRoot, {
|
182
189
|
ref: comboboxRef
|
183
190
|
}, /*#__PURE__*/React.createElement(StyledNativeSelect, {
|
@@ -73,6 +73,7 @@ const meta: Meta<StorySelectProps> = {
|
|
73
73
|
variant: 'normal',
|
74
74
|
disabled: false,
|
75
75
|
readOnly: false,
|
76
|
+
alwaysOpened: false,
|
76
77
|
},
|
77
78
|
parameters: {
|
78
79
|
controls: {
|
@@ -86,6 +87,7 @@ const meta: Meta<StorySelectProps> = {
|
|
86
87
|
'helperText',
|
87
88
|
'isTargetAmount',
|
88
89
|
'closeAfterSelect',
|
90
|
+
'alwaysOpened',
|
89
91
|
'variant',
|
90
92
|
'disabled',
|
91
93
|
'readOnly',
|
@@ -47,6 +47,7 @@ const meta: Meta<StorySelectProps> = {
|
|
47
47
|
usePortal: false,
|
48
48
|
disabled: false,
|
49
49
|
readOnly: false,
|
50
|
+
alwaysOpened: false,
|
50
51
|
label: 'Label',
|
51
52
|
placeholder: 'Placeholder',
|
52
53
|
enumerationType: 'comma',
|
@@ -81,7 +82,7 @@ const getSelectItems = (slug: string, elemCount: number) =>
|
|
81
82
|
}));
|
82
83
|
|
83
84
|
const StorySingle = (args: StorySelectProps) => {
|
84
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
85
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
85
86
|
|
86
87
|
const [value, setValue] = useState<ComboboxPrimitiveValue | undefined>('item_0');
|
87
88
|
|
@@ -104,6 +105,7 @@ const StorySingle = (args: StorySelectProps) => {
|
|
104
105
|
view={view}
|
105
106
|
disabled={disabled}
|
106
107
|
readOnly={readOnly}
|
108
|
+
alwaysOpened={alwaysOpened}
|
107
109
|
onChangeValue={onChangeValue}
|
108
110
|
>
|
109
111
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -129,7 +131,18 @@ export const Single: StoryObj<StorySelectProps> = {
|
|
129
131
|
};
|
130
132
|
|
131
133
|
const StoryMultiple = (args: StorySelectProps) => {
|
132
|
-
const {
|
134
|
+
const {
|
135
|
+
usePortal,
|
136
|
+
placement,
|
137
|
+
label,
|
138
|
+
placeholder,
|
139
|
+
readOnly,
|
140
|
+
disabled,
|
141
|
+
enumerationType,
|
142
|
+
alwaysOpened,
|
143
|
+
size = 'm',
|
144
|
+
view,
|
145
|
+
} = args;
|
133
146
|
|
134
147
|
const [value, setValue] = useState<Array<ComboboxPrimitiveValue> | undefined>(['item_2', 'item_3']);
|
135
148
|
|
@@ -153,6 +166,7 @@ const StoryMultiple = (args: StorySelectProps) => {
|
|
153
166
|
view={view}
|
154
167
|
disabled={disabled}
|
155
168
|
readOnly={readOnly}
|
169
|
+
alwaysOpened={alwaysOpened}
|
156
170
|
onChangeValue={onChangeValue}
|
157
171
|
>
|
158
172
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -174,7 +188,7 @@ export const Multiple: StoryObj<StorySelectProps> = {
|
|
174
188
|
};
|
175
189
|
|
176
190
|
const StoryAddCustomItem = (args: StorySelectProps) => {
|
177
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
191
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
178
192
|
|
179
193
|
const [opened, setOpened] = useState(false);
|
180
194
|
const [items, setItems] = useState(getSelectItems('item', 1));
|
@@ -225,6 +239,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
|
|
225
239
|
disabled={disabled}
|
226
240
|
readOnly={readOnly}
|
227
241
|
opened={opened}
|
242
|
+
alwaysOpened={alwaysOpened}
|
228
243
|
onToggle={onToggle}
|
229
244
|
onChangeValue={onChangeValue}
|
230
245
|
onKeyDown={onKeyDown}
|
@@ -73,6 +73,7 @@ const meta: Meta<StorySelectProps> = {
|
|
73
73
|
variant: 'normal',
|
74
74
|
disabled: false,
|
75
75
|
readOnly: false,
|
76
|
+
alwaysOpened: false,
|
76
77
|
},
|
77
78
|
parameters: {
|
78
79
|
controls: {
|
@@ -86,6 +87,7 @@ const meta: Meta<StorySelectProps> = {
|
|
86
87
|
'helperText',
|
87
88
|
'isTargetAmount',
|
88
89
|
'closeAfterSelect',
|
90
|
+
'alwaysOpened',
|
89
91
|
'variant',
|
90
92
|
'disabled',
|
91
93
|
'readOnly',
|
@@ -47,6 +47,7 @@ const meta: Meta<StorySelectProps> = {
|
|
47
47
|
usePortal: false,
|
48
48
|
disabled: false,
|
49
49
|
readOnly: false,
|
50
|
+
alwaysOpened: false,
|
50
51
|
label: 'Label',
|
51
52
|
placeholder: 'Placeholder',
|
52
53
|
enumerationType: 'comma',
|
@@ -81,7 +82,7 @@ const getSelectItems = (slug: string, elemCount: number) =>
|
|
81
82
|
}));
|
82
83
|
|
83
84
|
const StorySingle = (args: StorySelectProps) => {
|
84
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
85
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
85
86
|
|
86
87
|
const [value, setValue] = useState<ComboboxPrimitiveValue | undefined>('item_0');
|
87
88
|
|
@@ -104,6 +105,7 @@ const StorySingle = (args: StorySelectProps) => {
|
|
104
105
|
view={view}
|
105
106
|
disabled={disabled}
|
106
107
|
readOnly={readOnly}
|
108
|
+
alwaysOpened={alwaysOpened}
|
107
109
|
onChangeValue={onChangeValue}
|
108
110
|
>
|
109
111
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -129,7 +131,18 @@ export const Single: StoryObj<StorySelectProps> = {
|
|
129
131
|
};
|
130
132
|
|
131
133
|
const StoryMultiple = (args: StorySelectProps) => {
|
132
|
-
const {
|
134
|
+
const {
|
135
|
+
usePortal,
|
136
|
+
placement,
|
137
|
+
label,
|
138
|
+
placeholder,
|
139
|
+
readOnly,
|
140
|
+
disabled,
|
141
|
+
enumerationType,
|
142
|
+
alwaysOpened,
|
143
|
+
size = 'm',
|
144
|
+
view,
|
145
|
+
} = args;
|
133
146
|
|
134
147
|
const [value, setValue] = useState<Array<ComboboxPrimitiveValue> | undefined>(['item_2', 'item_3']);
|
135
148
|
|
@@ -153,6 +166,7 @@ const StoryMultiple = (args: StorySelectProps) => {
|
|
153
166
|
view={view}
|
154
167
|
disabled={disabled}
|
155
168
|
readOnly={readOnly}
|
169
|
+
alwaysOpened={alwaysOpened}
|
156
170
|
onChangeValue={onChangeValue}
|
157
171
|
>
|
158
172
|
<ComboboxItem value={undefined} text="Clear" />
|
@@ -174,7 +188,7 @@ export const Multiple: StoryObj<StorySelectProps> = {
|
|
174
188
|
};
|
175
189
|
|
176
190
|
const StoryAddCustomItem = (args: StorySelectProps) => {
|
177
|
-
const { usePortal, placement, label, placeholder, readOnly, disabled, size = 'm', view } = args;
|
191
|
+
const { usePortal, placement, label, placeholder, readOnly, disabled, alwaysOpened, size = 'm', view } = args;
|
178
192
|
|
179
193
|
const [opened, setOpened] = useState(false);
|
180
194
|
const [items, setItems] = useState(getSelectItems('item', 1));
|
@@ -225,6 +239,7 @@ const StoryAddCustomItem = (args: StorySelectProps) => {
|
|
225
239
|
disabled={disabled}
|
226
240
|
readOnly={readOnly}
|
227
241
|
opened={opened}
|
242
|
+
alwaysOpened={alwaysOpened}
|
228
243
|
onToggle={onToggle}
|
229
244
|
onChangeValue={onChangeValue}
|
230
245
|
onKeyDown={onKeyDown}
|
@@ -23,7 +23,7 @@ import { IconArrowWrapper, StyledArrow, Ul, StyledEmptyState, base } from './Com
|
|
23
23
|
import { base as base$1 } from './variations/_view/base.js';
|
24
24
|
import { base as base$2 } from './variations/_size/base.js';
|
25
25
|
|
26
|
-
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "filter", "closeAfterSelect"];
|
26
|
+
var _excluded = ["multiple", "value", "onChange", "isTargetAmount", "items", "placement", "label", "placeholder", "helperText", "contentLeft", "textBefore", "textAfter", "variant", "listOverflow", "listHeight", "listWidth", "portal", "renderItem", "view", "size", "labelPlacement", "readOnly", "disabled", "alwaysOpened", "filter", "closeAfterSelect"];
|
27
27
|
var Context = /*#__PURE__*/createContext({});
|
28
28
|
|
29
29
|
/**
|
@@ -59,6 +59,8 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
59
59
|
readOnly = _props$readOnly === void 0 ? false : _props$readOnly,
|
60
60
|
_props$disabled = props.disabled,
|
61
61
|
disabled = _props$disabled === void 0 ? false : _props$disabled,
|
62
|
+
_props$alwaysOpened = props.alwaysOpened,
|
63
|
+
alwaysOpened = _props$alwaysOpened === void 0 ? false : _props$alwaysOpened,
|
62
64
|
filter = props.filter,
|
63
65
|
outerCloseAfterSelect = props.closeAfterSelect,
|
64
66
|
rest = _objectWithoutProperties(props, _excluded);
|
@@ -108,7 +110,7 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
108
110
|
_useState6 = _slicedToArray(_useState5, 2),
|
109
111
|
checked = _useState6[0],
|
110
112
|
setChecked = _useState6[1];
|
111
|
-
var isCurrentListOpen = Boolean(path[0]);
|
113
|
+
var isCurrentListOpen = alwaysOpened || Boolean(path[0]);
|
112
114
|
var activeDescendantItemValue = ((_getItemByFocused = getItemByFocused(focusedPath, focusedToValueMap)) === null || _getItemByFocused === void 0 ? void 0 : _getItemByFocused.value) || '';
|
113
115
|
var withArrowInverse = isCurrentListOpen ? classes.arrowInverse : undefined;
|
114
116
|
var closeAfterSelect = outerCloseAfterSelect !== null && outerCloseAfterSelect !== void 0 ? outerCloseAfterSelect : !multiple;
|
@@ -218,7 +220,7 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
218
220
|
newValues.push(item.value);
|
219
221
|
}
|
220
222
|
});
|
221
|
-
if (closeAfterSelect) {
|
223
|
+
if (!alwaysOpened && closeAfterSelect) {
|
222
224
|
dispatchPath({
|
223
225
|
type: 'reset'
|
224
226
|
});
|
@@ -263,7 +265,7 @@ var comboboxRoot = function comboboxRoot(Root) {
|
|
263
265
|
updateSingleAncestors(item, checkedCopy, 'dot');
|
264
266
|
}
|
265
267
|
setTextValue(isCurrentChecked ? '' : item.label);
|
266
|
-
if (closeAfterSelect) {
|
268
|
+
if (!alwaysOpened && closeAfterSelect) {
|
267
269
|
dispatchPath({
|
268
270
|
type: 'reset'
|
269
271
|
});
|