@alfalab/core-components-select 17.5.1 → 17.6.0
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/components/arrow/Component.js +1 -1
- package/components/arrow/index.css +3 -3
- package/components/base-checkmark/Component.js +1 -1
- package/components/base-checkmark/index.css +4 -4
- package/components/base-option/Component.js +1 -1
- package/components/base-option/index.css +15 -15
- package/components/base-select/Component.js +24 -12
- package/components/base-select/index.css +11 -11
- package/components/base-select/mobile.css +12 -12
- package/components/checkmark/Component.js +1 -1
- package/components/checkmark/index.css +10 -10
- package/components/checkmark-mobile/Component.js +1 -1
- package/components/checkmark-mobile/index.css +6 -6
- package/components/field/Component.js +1 -1
- package/components/field/index.css +12 -12
- package/components/footer/Component.js +1 -1
- package/components/footer/index.css +5 -5
- package/components/optgroup/Component.js +1 -1
- package/components/optgroup/index.css +6 -6
- package/components/option/Component.js +1 -1
- package/components/option/index.css +19 -19
- package/components/options-list/Component.js +1 -1
- package/components/options-list/index.css +10 -10
- package/components/search/Component.js +1 -1
- package/components/search/index.css +2 -2
- package/components/virtual-options-list/Component.js +1 -1
- package/components/virtual-options-list/index.css +15 -15
- package/cssm/components/base-select/Component.js +22 -10
- package/cssm/{hook-546b2479.js → hook-052c1a2e.js} +20 -8
- package/{hook-64a8061f.d.ts → cssm/hook-2f4e96b2.d.ts} +9 -7
- package/cssm/mobile/Component.mobile.js +7 -9
- package/cssm/presets/index.d.ts +1 -1
- package/cssm/presets/index.js +1 -1
- package/cssm/presets/useSelectWithApply/hook.js +1 -1
- package/cssm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
- package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +2 -2
- package/cssm/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +1 -1
- package/cssm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/cssm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
- package/cssm/shared/index.js +2 -1
- package/cssm/typings.d.ts +3 -1
- package/cssm/utils.d.ts +3 -2
- package/cssm/utils.js +24 -9
- package/esm/components/arrow/Component.js +1 -1
- package/esm/components/arrow/index.css +3 -3
- package/esm/components/base-checkmark/Component.js +1 -1
- package/esm/components/base-checkmark/index.css +4 -4
- package/esm/components/base-option/Component.js +1 -1
- package/esm/components/base-option/index.css +15 -15
- package/esm/components/base-select/Component.js +25 -13
- package/esm/components/base-select/index.css +11 -11
- package/esm/components/base-select/mobile.css +12 -12
- package/esm/components/checkmark/Component.js +1 -1
- package/esm/components/checkmark/index.css +10 -10
- package/esm/components/checkmark-mobile/Component.js +1 -1
- package/esm/components/checkmark-mobile/index.css +6 -6
- package/esm/components/field/Component.js +1 -1
- package/esm/components/field/index.css +12 -12
- package/esm/components/footer/Component.js +1 -1
- package/esm/components/footer/index.css +5 -5
- package/esm/components/optgroup/Component.js +1 -1
- package/esm/components/optgroup/index.css +6 -6
- package/esm/components/option/Component.js +1 -1
- package/esm/components/option/index.css +19 -19
- package/esm/components/options-list/Component.js +1 -1
- package/esm/components/options-list/index.css +10 -10
- package/esm/components/search/Component.js +1 -1
- package/esm/components/search/index.css +2 -2
- package/esm/components/virtual-options-list/Component.js +1 -1
- package/esm/components/virtual-options-list/index.css +15 -15
- package/{modern/hook-64a8061f.d.ts → esm/hook-2f4e96b2.d.ts} +9 -7
- package/esm/{hook-699ea205.js → hook-8bbe812b.js} +21 -9
- package/esm/mobile/Component.mobile.js +7 -9
- package/esm/presets/index.d.ts +1 -1
- package/esm/presets/index.js +1 -1
- package/esm/presets/useSelectWithApply/hook.js +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +3 -3
- package/esm/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
- package/esm/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
- package/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
- package/esm/presets/useSelectWithLoading/hook.js +1 -1
- package/esm/presets/useSelectWithLoading/index.css +2 -2
- package/esm/shared/index.js +2 -2
- package/esm/typings.d.ts +3 -1
- package/esm/utils.d.ts +3 -2
- package/esm/utils.js +24 -10
- package/{cssm/hook-64a8061f.d.ts → hook-2f4e96b2.d.ts} +9 -7
- package/{hook-23a1acb8.js → hook-4d5fa450.js} +20 -8
- package/mobile/Component.mobile.js +7 -9
- package/modern/components/arrow/Component.js +1 -1
- package/modern/components/arrow/index.css +3 -3
- package/modern/components/base-checkmark/Component.js +1 -1
- package/modern/components/base-checkmark/index.css +4 -4
- package/modern/components/base-option/Component.js +1 -1
- package/modern/components/base-option/index.css +15 -15
- package/modern/components/base-select/Component.js +13 -4
- package/modern/components/base-select/index.css +11 -11
- package/modern/components/base-select/mobile.css +12 -12
- package/modern/components/checkmark/Component.js +1 -1
- package/modern/components/checkmark/index.css +10 -10
- package/modern/components/checkmark-mobile/Component.js +1 -1
- package/modern/components/checkmark-mobile/index.css +6 -6
- package/modern/components/field/Component.js +1 -1
- package/modern/components/field/index.css +12 -12
- package/modern/components/footer/Component.js +1 -1
- package/modern/components/footer/index.css +5 -5
- package/modern/components/optgroup/Component.js +1 -1
- package/modern/components/optgroup/index.css +6 -6
- package/modern/components/option/Component.js +1 -1
- package/modern/components/option/index.css +19 -19
- package/modern/components/options-list/Component.js +1 -1
- package/modern/components/options-list/index.css +10 -10
- package/modern/components/search/Component.js +1 -1
- package/modern/components/search/index.css +2 -2
- package/modern/components/virtual-options-list/Component.js +1 -1
- package/modern/components/virtual-options-list/index.css +15 -15
- package/{esm/hook-64a8061f.d.ts → modern/hook-2f4e96b2.d.ts} +9 -7
- package/modern/{hook-b0f48fdd.js → hook-6a076c91.js} +14 -3
- package/modern/mobile/Component.mobile.js +8 -10
- package/modern/presets/index.d.ts +1 -1
- package/modern/presets/index.js +1 -1
- package/modern/presets/useSelectWithApply/hook.js +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +3 -3
- package/modern/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
- package/modern/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
- package/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
- package/modern/presets/useSelectWithLoading/hook.js +1 -1
- package/modern/presets/useSelectWithLoading/index.css +2 -2
- package/modern/shared/index.js +2 -2
- package/modern/typings.d.ts +3 -1
- package/modern/utils.d.ts +3 -2
- package/modern/utils.js +23 -10
- package/package.json +1 -1
- package/presets/index.d.ts +1 -1
- package/presets/index.js +1 -1
- package/presets/useSelectWithApply/hook.js +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/Component.js +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/footer/Component.js +3 -3
- package/presets/useSelectWithApply/options-list-with-apply/footer/index.css +3 -3
- package/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/header/index.css +3 -3
- package/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/index.js +1 -1
- package/presets/useSelectWithLoading/hook.js +1 -1
- package/presets/useSelectWithLoading/index.css +2 -2
- package/shared/index.js +2 -1
- package/src/components/base-select/Component.tsx +28 -3
- package/src/mobile/Component.mobile.tsx +8 -18
- package/src/presets/useSelectWithApply/hook.tsx +26 -4
- package/src/presets/useSelectWithApply/options-list-with-apply/footer/Component.tsx +2 -0
- package/src/presets/useSelectWithApply/options-list-with-apply/footer/index.module.css +1 -1
- package/src/typings.ts +2 -0
- package/src/utils.ts +26 -8
- package/typings.d.ts +3 -1
- package/utils.d.ts +3 -2
- package/utils.js +24 -9
- /package/cssm/{hook-546b2479.d.ts → hook-052c1a2e.d.ts} +0 -0
- /package/esm/{hook-699ea205.d.ts → hook-8bbe812b.d.ts} +0 -0
- /package/{hook-23a1acb8.d.ts → hook-4d5fa450.d.ts} +0 -0
- /package/modern/{hook-b0f48fdd.d.ts → hook-6a076c91.d.ts} +0 -0
|
@@ -12,16 +12,14 @@ import { Option } from '../components/option/Component.js';
|
|
|
12
12
|
import { OptionsList } from '../components/options-list/Component.js';
|
|
13
13
|
import { Search } from '../components/search/Component.js';
|
|
14
14
|
import { VirtualOptionsList } from '../components/virtual-options-list/Component.js';
|
|
15
|
-
import { u as useSelectWithApply } from '../hook-
|
|
15
|
+
import { u as useSelectWithApply } from '../hook-8bbe812b.js';
|
|
16
16
|
import { Header } from '../presets/useSelectWithApply/options-list-with-apply/header/Component.js';
|
|
17
17
|
|
|
18
18
|
var VIRTUAL_OPTIONS_LIST_THRESHOLD = 30;
|
|
19
19
|
var SelectMobile = forwardRef(function (_a, ref) {
|
|
20
|
-
var _b = _a.autocomplete, autocomplete = _b === void 0 ? false : _b, _c = _a.multiple, multiple = _c === void 0 ? false : _c, _d = _a.allowUnselect, allowUnselect = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, _f = _a.closeOnSelect, closeOnSelect = _f === void 0 ? !multiple : _f, _g = _a.circularNavigation, circularNavigation = _g === void 0 ? false : _g, _h = _a.defaultOpen, defaultOpen = _h === void 0 ? false : _h, openProp = _a.open, _j = _a.size, size = _j === void 0 ? 56 : _j, _k = _a.optionsSize, optionsSize = _k === void 0 ? 56 : _k, _l = _a.fieldProps, fieldProps = _l === void 0 ? {} : _l, _m = _a.optionProps, optionProps = _m === void 0 ? {} : _m, _o = _a.optionsListProps, optionsListProps = _o === void 0 ? {} : _o, _p = _a.Arrow, Arrow$1 = _p === void 0 ? Arrow : _p, _q = _a.Field, Field$1 = _q === void 0 ? Field : _q, _r = _a.Optgroup, Optgroup$1 = _r === void 0 ? Optgroup : _r, _s = _a.Option, Option$1 = _s === void 0 ? Option : _s, _t = _a.Search, Search$1 = _t === void 0 ? Search : _t, selected = _a.selected,
|
|
20
|
+
var _b = _a.autocomplete, autocomplete = _b === void 0 ? false : _b, _c = _a.multiple, multiple = _c === void 0 ? false : _c, _d = _a.allowUnselect, allowUnselect = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, _f = _a.closeOnSelect, closeOnSelect = _f === void 0 ? !multiple : _f, _g = _a.circularNavigation, circularNavigation = _g === void 0 ? false : _g, _h = _a.defaultOpen, defaultOpen = _h === void 0 ? false : _h, openProp = _a.open, _j = _a.size, size = _j === void 0 ? 56 : _j, _k = _a.optionsSize, optionsSize = _k === void 0 ? 56 : _k, _l = _a.fieldProps, fieldProps = _l === void 0 ? {} : _l, _m = _a.optionProps, optionProps = _m === void 0 ? {} : _m, _o = _a.optionsListProps, optionsListProps = _o === void 0 ? {} : _o, _p = _a.Arrow, Arrow$1 = _p === void 0 ? Arrow : _p, _q = _a.Field, Field$1 = _q === void 0 ? Field : _q, _r = _a.Optgroup, Optgroup$1 = _r === void 0 ? Optgroup : _r, _s = _a.Option, Option$1 = _s === void 0 ? Option : _s, _t = _a.Search, Search$1 = _t === void 0 ? Search : _t, selected = _a.selected, options = _a.options, _u = _a.OptionsList, OptionsList$1 = _u === void 0 ? options.length > VIRTUAL_OPTIONS_LIST_THRESHOLD
|
|
21
21
|
? VirtualOptionsList
|
|
22
|
-
: OptionsList :
|
|
23
|
-
var typedRestBottomSheetProps = restProps;
|
|
24
|
-
var typedRestModalProps = restProps;
|
|
22
|
+
: OptionsList : _u, onChange = _a.onChange, _v = _a.showClear, showClear = _v === void 0 ? true : _v, showSelectAll = _a.showSelectAll, showHeaderWithSelectAll = _a.showHeaderWithSelectAll, _w = _a.useWithApplyHook, useWithApplyHook = _w === void 0 ? multiple : _w, showSearch = _a.showSearch, searchProps = _a.searchProps, restProps = __rest(_a, ["autocomplete", "multiple", "allowUnselect", "disabled", "closeOnSelect", "circularNavigation", "defaultOpen", "open", "size", "optionsSize", "fieldProps", "optionProps", "optionsListProps", "Arrow", "Field", "Optgroup", "Option", "Search", "selected", "options", "OptionsList", "onChange", "showClear", "showSelectAll", "showHeaderWithSelectAll", "useWithApplyHook", "showSearch", "searchProps"]);
|
|
25
23
|
var applyProps = useSelectWithApply({
|
|
26
24
|
optionsListProps: __assign(__assign({}, optionsListProps), { Footer: Footer }),
|
|
27
25
|
OptionsList: OptionsList$1,
|
|
@@ -34,13 +32,13 @@ var SelectMobile = forwardRef(function (_a, ref) {
|
|
|
34
32
|
showSelectAll: showSelectAll,
|
|
35
33
|
});
|
|
36
34
|
var bottomAddons = useWithApplyHook && showHeaderWithSelectAll && (React.createElement(Header, __assign({}, applyProps.optionsListProps.headerProps, { mobile: true })));
|
|
37
|
-
return (React.createElement(BaseSelect, __assign({ ref: ref, view: 'mobile', autocomplete: autocomplete, multiple: multiple, allowUnselect: allowUnselect, disabled: disabled, closeOnSelect: closeOnSelect, circularNavigation: circularNavigation, defaultOpen: defaultOpen, open: openProp, size: size, optionsSize: optionsSize, fieldProps: __assign({ FormControlComponent: FormControlMobile }, fieldProps), optionProps: optionProps, Arrow: Arrow$1, Field: Field$1, Optgroup: Optgroup$1, Option: Option$1, Search: Search$1,
|
|
35
|
+
return (React.createElement(BaseSelect, __assign({ ref: ref, view: 'mobile', autocomplete: autocomplete, multiple: multiple, allowUnselect: allowUnselect, disabled: disabled, closeOnSelect: closeOnSelect, circularNavigation: circularNavigation, defaultOpen: defaultOpen, open: openProp, size: size, optionsSize: optionsSize, fieldProps: __assign({ FormControlComponent: FormControlMobile }, fieldProps), optionProps: optionProps, Arrow: Arrow$1, Field: Field$1, Optgroup: Optgroup$1, Option: Option$1, Search: Search$1, options: options, selected: selected, onChange: onChange, OptionsList: OptionsList$1, showSearch: showSearch, searchProps: searchProps, BottomSheet: BottomSheet, ModalMobile: ModalMobile, optionsListProps: optionsListProps }, restProps, (restProps.isBottomSheet === false
|
|
38
36
|
? {
|
|
39
|
-
|
|
37
|
+
modalHeaderProps: __assign({ bottomAddons: bottomAddons }, restProps.modalHeaderProps),
|
|
40
38
|
}
|
|
41
39
|
: {
|
|
42
|
-
|
|
43
|
-
}),
|
|
40
|
+
bottomSheetProps: __assign({ bottomAddons: bottomAddons }, restProps.bottomSheetProps),
|
|
41
|
+
}), (useWithApplyHook && applyProps))));
|
|
44
42
|
});
|
|
45
43
|
|
|
46
44
|
export { SelectMobile };
|
package/esm/presets/index.d.ts
CHANGED
package/esm/presets/index.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export { useSelectWithLoading } from './useSelectWithLoading/hook.js';
|
|
2
2
|
export { useLazyLoading } from './useLazyLoading/hook.js';
|
|
3
|
-
export { S as SELECT_ALL_KEY, u as useSelectWithApply } from '../hook-
|
|
3
|
+
export { S as SELECT_ALL_KEY, u as useSelectWithApply } from '../hook-8bbe812b.js';
|
|
@@ -2,6 +2,6 @@ import 'tslib';
|
|
|
2
2
|
import 'react';
|
|
3
3
|
import '../../../components/options-list/Component.js';
|
|
4
4
|
import '../../../consts.js';
|
|
5
|
-
export { O as OptionsListWithApply } from '../../../hook-
|
|
5
|
+
export { O as OptionsListWithApply } from '../../../hook-8bbe812b.js';
|
|
6
6
|
import './footer/Component.js';
|
|
7
7
|
import './header/Component.js';
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import { ButtonDesktop } from '@alfalab/core-components-button/esm/desktop';
|
|
3
3
|
import { getDataTestId } from '@alfalab/core-components-shared/esm';
|
|
4
4
|
|
|
5
|
-
var styles = {"footer":"
|
|
5
|
+
var styles = {"footer":"select__footer_1i5y0","button":"select__button_1i5y0"};
|
|
6
6
|
require('./index.css')
|
|
7
7
|
|
|
8
8
|
var Footer = function (_a) {
|
|
@@ -10,8 +10,8 @@ var Footer = function (_a) {
|
|
|
10
10
|
return (React.createElement("div", {
|
|
11
11
|
// eslint-disable-next-line jsx-a11y/no-noninteractive-tabindex
|
|
12
12
|
tabIndex: 0, className: styles.footer },
|
|
13
|
-
React.createElement(ButtonDesktop, { size: 32, view: 'primary', onClick: handleApply, dataTestId: getDataTestId(dataTestId, 'apply') }, "\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C"),
|
|
14
|
-
showClear && selectedDraft.length > 0 && (React.createElement(ButtonDesktop, { size: 32, view: 'secondary', onClick: handleClear, dataTestId: getDataTestId(dataTestId, 'clear') }, "\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C"))));
|
|
13
|
+
React.createElement(ButtonDesktop, { size: 32, view: 'primary', onClick: handleApply, dataTestId: getDataTestId(dataTestId, 'apply'), className: styles.button }, "\u041F\u0440\u0438\u043C\u0435\u043D\u0438\u0442\u044C"),
|
|
14
|
+
showClear && selectedDraft.length > 0 && (React.createElement(ButtonDesktop, { size: 32, view: 'secondary', onClick: handleClear, dataTestId: getDataTestId(dataTestId, 'clear'), className: styles.button }, "\u0421\u0431\u0440\u043E\u0441\u0438\u0442\u044C"))));
|
|
15
15
|
};
|
|
16
16
|
|
|
17
17
|
export { Footer };
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: 467s1 */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-bg-primary: #fff; /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
@@ -17,10 +17,10 @@
|
|
|
17
17
|
--gap-s: 12px;
|
|
18
18
|
} :root {
|
|
19
19
|
} :root {
|
|
20
|
-
} .
|
|
20
|
+
} .select__footer_1i5y0 {
|
|
21
21
|
background-color: var(--color-light-bg-primary);
|
|
22
22
|
padding: var(--gap-s);
|
|
23
23
|
outline: none
|
|
24
|
-
} .
|
|
24
|
+
} .select__footer_1i5y0 > .select__button_1i5y0 + .select__button_1i5y0 {
|
|
25
25
|
margin-left: var(--gap-xs);
|
|
26
26
|
}
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import { Checkbox } from '@alfalab/core-components-checkbox/esm';
|
|
4
4
|
|
|
5
|
-
var styles = {"desktop":"
|
|
5
|
+
var styles = {"desktop":"select__desktop_14hbg","mobile":"select__mobile_14hbg"};
|
|
6
6
|
require('./index.css')
|
|
7
7
|
|
|
8
8
|
var Header = function (_a) {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: 7p34l */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
4
4
|
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
@@ -16,8 +16,8 @@
|
|
|
16
16
|
--gap-s: 12px;
|
|
17
17
|
} :root {
|
|
18
18
|
} :root {
|
|
19
|
-
} .
|
|
19
|
+
} .select__desktop_14hbg {
|
|
20
20
|
padding: var(--gap-s);
|
|
21
|
-
} .
|
|
21
|
+
} .select__mobile_14hbg {
|
|
22
22
|
padding: var(--gap-s) var(--gap-xs);
|
|
23
23
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "../../../hook-
|
|
1
|
+
export * from "../../../hook-8bbe812b";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export { O as OptionsListWithApply } from '../../../hook-
|
|
1
|
+
export { O as OptionsListWithApply } from '../../../hook-8bbe812b.js';
|
|
@@ -3,7 +3,7 @@ import React from 'react';
|
|
|
3
3
|
import { Skeleton } from '@alfalab/core-components-skeleton/esm';
|
|
4
4
|
import { Option } from '../../components/option/Component.js';
|
|
5
5
|
|
|
6
|
-
var styles = {"skeleton":"
|
|
6
|
+
var styles = {"skeleton":"select__skeleton_170xy"};
|
|
7
7
|
require('./index.css')
|
|
8
8
|
|
|
9
9
|
function useSelectWithLoading(_a) {
|
package/esm/shared/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
export { useSelectWithLoading } from '../presets/useSelectWithLoading/hook.js';
|
|
2
2
|
export { useLazyLoading } from '../presets/useLazyLoading/hook.js';
|
|
3
|
-
export { S as SELECT_ALL_KEY, u as useSelectWithApply } from '../hook-
|
|
4
|
-
export { defaultAccessor, defaultFilterFn, getSelectTestIds, isGroup, isOptionShape, joinOptions, lastIndexOf, processOptions, usePrevious, useVisibleOptions } from '../utils.js';
|
|
3
|
+
export { S as SELECT_ALL_KEY, u as useSelectWithApply } from '../hook-8bbe812b.js';
|
|
4
|
+
export { defaultAccessor, defaultFilterFn, defaultGroupAccessor, getSelectTestIds, isGroup, isOptionShape, joinOptions, lastIndexOf, processOptions, usePrevious, useVisibleOptions } from '../utils.js';
|
|
5
5
|
export { Option } from '../components/option/Component.js';
|
|
6
6
|
export { BaseOption } from '../components/base-option/Component.js';
|
|
7
7
|
export { OptionsList } from '../components/options-list/Component.js';
|
package/esm/typings.d.ts
CHANGED
|
@@ -5,7 +5,7 @@ import { InputProps } from "@alfalab/core-components-input";
|
|
|
5
5
|
import { ModalProps } from "@alfalab/core-components-modal";
|
|
6
6
|
import { ModalFooterProps, ModalHeaderProps } from "@alfalab/core-components-modal/shared";
|
|
7
7
|
import { PopoverProps } from "@alfalab/core-components-popover";
|
|
8
|
-
import { UseSelectWithApplyProps } from "./hook-
|
|
8
|
+
import { UseSelectWithApplyProps } from "./hook-2f4e96b2";
|
|
9
9
|
type AnyObject = Record<string, any>;
|
|
10
10
|
type OptionShape = {
|
|
11
11
|
/**
|
|
@@ -237,6 +237,8 @@ type BaseSelectProps = {
|
|
|
237
237
|
filterFn?: (optionText: string, search: string) => boolean;
|
|
238
238
|
value?: string;
|
|
239
239
|
onChange?: (value: string) => void;
|
|
240
|
+
filterGroup?: boolean;
|
|
241
|
+
groupAccessor?: (group: GroupShape) => string | undefined;
|
|
240
242
|
};
|
|
241
243
|
/**
|
|
242
244
|
* Обработчик выбора
|
package/esm/utils.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ declare const joinOptions: ({ selected, selectedMultiple, }: {
|
|
|
6
6
|
selected?: OptionShape | undefined;
|
|
7
7
|
selectedMultiple?: OptionShape[] | undefined;
|
|
8
8
|
}) => ReactNode[] | null;
|
|
9
|
-
declare function processOptions(options: BaseSelectProps['options'], selected?: BaseSelectProps['selected'], filterFn?: (option: OptionShape) => boolean): {
|
|
9
|
+
declare function processOptions(options: BaseSelectProps['options'], selected?: BaseSelectProps['selected'], filterFn?: (option: OptionShape | GroupShape) => boolean, filterGroup?: boolean): {
|
|
10
10
|
filteredOptions: (OptionShape | GroupShape)[];
|
|
11
11
|
flatOptions: OptionShape[];
|
|
12
12
|
selectedOptions: OptionShape[];
|
|
@@ -35,6 +35,7 @@ type useVisibleOptionsArgs = {
|
|
|
35
35
|
};
|
|
36
36
|
declare function useVisibleOptions({ visibleOptions, listRef, styleTargetRef, open, invalidate, }: useVisibleOptionsArgs): void;
|
|
37
37
|
declare function defaultFilterFn(optionText: string, search: string): boolean;
|
|
38
|
+
declare function defaultGroupAccessor(option: GroupShape): string | undefined;
|
|
38
39
|
declare function defaultAccessor(option: OptionShape): string;
|
|
39
40
|
declare function usePrevious<T>(value: T): T | undefined;
|
|
40
41
|
declare const lastIndexOf: <T>(array: T[], predicate: (item: T) => boolean) => number;
|
|
@@ -64,4 +65,4 @@ declare function getSelectTestIds(dataTestId: string): {
|
|
|
64
65
|
modalHeader: string;
|
|
65
66
|
modalContent: string;
|
|
66
67
|
};
|
|
67
|
-
export { isGroup, isOptionShape, joinOptions, processOptions, useVisibleOptions, defaultFilterFn, defaultAccessor, usePrevious, lastIndexOf, getSelectTestIds };
|
|
68
|
+
export { isGroup, isOptionShape, joinOptions, processOptions, useVisibleOptions, defaultFilterFn, defaultGroupAccessor, defaultAccessor, usePrevious, lastIndexOf, getSelectTestIds };
|
package/esm/utils.js
CHANGED
|
@@ -26,9 +26,10 @@ var joinOptions = function (_a) {
|
|
|
26
26
|
}, []);
|
|
27
27
|
};
|
|
28
28
|
// За один проход делает список пунктов меню плоским и находит выбранные пункты по ключу
|
|
29
|
-
function processOptions(options, selected, filterFn) {
|
|
29
|
+
function processOptions(options, selected, filterFn, filterGroup) {
|
|
30
30
|
if (selected === void 0) { selected = []; }
|
|
31
31
|
if (filterFn === void 0) { filterFn = function () { return true; }; }
|
|
32
|
+
if (filterGroup === void 0) { filterGroup = false; }
|
|
32
33
|
var flatOptions = [];
|
|
33
34
|
var filteredOptions = [];
|
|
34
35
|
var selectedArray = Array.isArray(selected) ? selected : [selected];
|
|
@@ -36,12 +37,20 @@ function processOptions(options, selected, filterFn) {
|
|
|
36
37
|
var selectedKeys = selectedArray.filter(function (option) { return typeof option === 'string'; });
|
|
37
38
|
var isSelected = function (option) { return selectedKeys.includes(option.key); };
|
|
38
39
|
var process = function (option) {
|
|
39
|
-
|
|
40
|
+
var isGroupOption = isGroup(option);
|
|
41
|
+
if (!isGroupOption && isSelected(option)) {
|
|
40
42
|
selectedOptions.push(option);
|
|
41
43
|
}
|
|
42
44
|
if (!filterFn(option))
|
|
43
45
|
return false;
|
|
44
|
-
|
|
46
|
+
if (isGroupOption) {
|
|
47
|
+
if (filterGroup) {
|
|
48
|
+
Array.prototype.push.apply(flatOptions, option.options);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
else {
|
|
52
|
+
flatOptions.push(option);
|
|
53
|
+
}
|
|
45
54
|
return true;
|
|
46
55
|
};
|
|
47
56
|
options.forEach(function (option) {
|
|
@@ -52,14 +61,16 @@ function processOptions(options, selected, filterFn) {
|
|
|
52
61
|
if (matched)
|
|
53
62
|
group_1.options.push(groupOption);
|
|
54
63
|
});
|
|
55
|
-
if (group_1.options.length)
|
|
64
|
+
if (group_1.options.length) {
|
|
56
65
|
filteredOptions.push(group_1);
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
if (!filterGroup)
|
|
69
|
+
return;
|
|
57
70
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
filteredOptions.push(option);
|
|
62
|
-
}
|
|
71
|
+
var matched = process(option);
|
|
72
|
+
if (matched)
|
|
73
|
+
filteredOptions.push(option);
|
|
63
74
|
});
|
|
64
75
|
return { filteredOptions: filteredOptions, flatOptions: flatOptions, selectedOptions: selectedOptions };
|
|
65
76
|
}
|
|
@@ -90,6 +101,9 @@ function defaultFilterFn(optionText, search) {
|
|
|
90
101
|
return true;
|
|
91
102
|
return optionText.toLowerCase().includes(search.toLowerCase());
|
|
92
103
|
}
|
|
104
|
+
function defaultGroupAccessor(option) {
|
|
105
|
+
return option.label;
|
|
106
|
+
}
|
|
93
107
|
function defaultAccessor(option) {
|
|
94
108
|
if (typeof option.content === 'string')
|
|
95
109
|
return option.content;
|
|
@@ -142,4 +156,4 @@ function getSelectTestIds(dataTestId) {
|
|
|
142
156
|
};
|
|
143
157
|
}
|
|
144
158
|
|
|
145
|
-
export { defaultAccessor, defaultFilterFn, getSelectTestIds, isGroup, isOptionShape, joinOptions, lastIndexOf, processOptions, usePrevious, useVisibleOptions };
|
|
159
|
+
export { defaultAccessor, defaultFilterFn, defaultGroupAccessor, getSelectTestIds, isGroup, isOptionShape, joinOptions, lastIndexOf, processOptions, usePrevious, useVisibleOptions };
|
|
@@ -45,14 +45,12 @@ type UseSelectWithApplyProps = {
|
|
|
45
45
|
declare const SELECT_ALL_KEY = "select_all";
|
|
46
46
|
declare function useSelectWithApply({ options, selected, onChange, OptionsList, optionsListProps, showClear, showSelectAll, showHeaderWithSelectAll, showSearch, searchProps, }: UseSelectWithApplyProps): {
|
|
47
47
|
OptionsList: import("react").ForwardRefExoticComponent<import("./typings").OptionsListProps & {
|
|
48
|
-
/**
|
|
49
|
-
* Обработчик выбора
|
|
50
|
-
*/
|
|
51
48
|
showClear?: boolean | undefined;
|
|
52
49
|
onClose?: (() => void) | undefined;
|
|
53
|
-
|
|
54
|
-
*
|
|
50
|
+
/**
|
|
51
|
+
* Обработчик выбора
|
|
55
52
|
*/
|
|
53
|
+
selectedDraft?: OptionShape[] | undefined;
|
|
56
54
|
OptionsList?: import("react").FC<import("./typings").OptionsListProps & import("react").RefAttributes<HTMLDivElement>> | undefined;
|
|
57
55
|
Footer?: import("react").FC<import("./presets/useSelectWithApply/options-list-with-apply/footer/Component").FooterProps> | undefined;
|
|
58
56
|
Header?: import("react").FC<import("./presets/useSelectWithApply/options-list-with-apply/header/Component").HeaderProps> | undefined;
|
|
@@ -83,13 +81,15 @@ declare function useSelectWithApply({ options, selected, onChange, OptionsList,
|
|
|
83
81
|
})[];
|
|
84
82
|
onChange: (payload: import("./typings").BaseSelectChangePayload) => void;
|
|
85
83
|
selected: string | OptionShape | (string | OptionShape)[] | null | undefined;
|
|
86
|
-
showSearch: boolean
|
|
84
|
+
showSearch: boolean;
|
|
87
85
|
searchProps: {
|
|
88
86
|
value: string;
|
|
89
87
|
onChange: ((value: string) => void) | undefined;
|
|
90
88
|
componentProps?: import("./typings").SearchProps | undefined;
|
|
91
89
|
accessor?: ((option: OptionShape) => string) | undefined;
|
|
92
90
|
filterFn?: ((optionText: string, search: string) => boolean) | undefined;
|
|
91
|
+
filterGroup?: boolean | undefined;
|
|
92
|
+
groupAccessor?: ((group: import("./typings").GroupShape) => string | undefined) | undefined;
|
|
93
93
|
} | undefined;
|
|
94
94
|
originalProps: {
|
|
95
95
|
options: (OptionShape | import("./typings").GroupShape)[];
|
|
@@ -100,13 +100,15 @@ declare function useSelectWithApply({ options, selected, onChange, OptionsList,
|
|
|
100
100
|
showClear: boolean;
|
|
101
101
|
showSelectAll: boolean;
|
|
102
102
|
showHeaderWithSelectAll: boolean;
|
|
103
|
-
showSearch: boolean
|
|
103
|
+
showSearch: boolean;
|
|
104
104
|
searchProps: {
|
|
105
105
|
componentProps?: import("./typings").SearchProps | undefined;
|
|
106
106
|
accessor?: ((option: OptionShape) => string) | undefined;
|
|
107
107
|
filterFn?: ((optionText: string, search: string) => boolean) | undefined;
|
|
108
108
|
value?: string | undefined;
|
|
109
109
|
onChange?: ((value: string) => void) | undefined;
|
|
110
|
+
filterGroup?: boolean | undefined;
|
|
111
|
+
groupAccessor?: ((group: import("./typings").GroupShape) => string | undefined) | undefined;
|
|
110
112
|
};
|
|
111
113
|
};
|
|
112
114
|
};
|
|
@@ -60,17 +60,29 @@ var OptionsListWithApply = React.forwardRef(function (_a, ref) {
|
|
|
60
60
|
var SELECT_ALL_KEY = 'select_all';
|
|
61
61
|
var selectAllOption = { key: SELECT_ALL_KEY, content: 'Выбрать все' };
|
|
62
62
|
function useSelectWithApply(_a) {
|
|
63
|
-
var
|
|
64
|
-
var
|
|
65
|
-
var
|
|
63
|
+
var _b, _c;
|
|
64
|
+
var options = _a.options, selected = _a.selected, _d = _a.onChange, onChange = _d === void 0 ? function () { return null; } : _d, OptionsList = _a.OptionsList, _e = _a.optionsListProps, optionsListProps = _e === void 0 ? {} : _e, _f = _a.showClear, showClear = _f === void 0 ? true : _f, _g = _a.showSelectAll, showSelectAll = _g === void 0 ? false : _g, _h = _a.showHeaderWithSelectAll, showHeaderWithSelectAll = _h === void 0 ? false : _h, _j = _a.showSearch, showSearch = _j === void 0 ? false : _j, _k = _a.searchProps, searchProps = _k === void 0 ? {} : _k;
|
|
65
|
+
var _l = React.useState(''), searchState = _l[0], setSearchState = _l[1];
|
|
66
|
+
var _m = typeof (searchProps === null || searchProps === void 0 ? void 0 : searchProps.value) === 'string'
|
|
66
67
|
? [searchProps.value, searchProps.onChange]
|
|
67
|
-
: [searchState, setSearchState], search =
|
|
68
|
+
: [searchState, setSearchState], search = _m[0], setSearch = _m[1];
|
|
68
69
|
var accessor = searchProps.accessor || utils.defaultAccessor;
|
|
69
70
|
var filterFn = searchProps.filterFn || utils.defaultFilterFn;
|
|
70
|
-
var
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
71
|
+
var groupAccessor = (_b = searchProps.groupAccessor) !== null && _b !== void 0 ? _b : utils.defaultGroupAccessor;
|
|
72
|
+
var filterGroup = (_c = searchProps.filterGroup) !== null && _c !== void 0 ? _c : false;
|
|
73
|
+
var _o = React.useMemo(function () {
|
|
74
|
+
return utils.processOptions(options, selected, showSearch
|
|
75
|
+
? function (option) {
|
|
76
|
+
if (utils.isGroup(option)) {
|
|
77
|
+
var groupAccessorValue = groupAccessor(option);
|
|
78
|
+
return (typeof groupAccessorValue === 'string' &&
|
|
79
|
+
filterFn(groupAccessorValue, search));
|
|
80
|
+
}
|
|
81
|
+
return filterFn(accessor(option), search);
|
|
82
|
+
}
|
|
83
|
+
: undefined, filterGroup);
|
|
84
|
+
}, [options, selected, showSearch, filterGroup, filterFn, accessor, search, groupAccessor]), flatOptions = _o.flatOptions, selectedOptions = _o.selectedOptions;
|
|
85
|
+
var _p = React.useState(selectedOptions), selectedDraft = _p[0], setSelectedDraft = _p[1];
|
|
74
86
|
var selectedOptionsRef = React.useRef(selectedOptions);
|
|
75
87
|
var handleApply = function () {
|
|
76
88
|
onChange({
|
|
@@ -16,7 +16,7 @@ var components_option_Component = require('../components/option/Component.js');
|
|
|
16
16
|
var components_optionsList_Component = require('../components/options-list/Component.js');
|
|
17
17
|
var components_search_Component = require('../components/search/Component.js');
|
|
18
18
|
var components_virtualOptionsList_Component = require('../components/virtual-options-list/Component.js');
|
|
19
|
-
var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-
|
|
19
|
+
var presets_useSelectWithApply_optionsListWithApply_Component = require('../hook-4d5fa450.js');
|
|
20
20
|
var presets_useSelectWithApply_optionsListWithApply_header_Component = require('../presets/useSelectWithApply/options-list-with-apply/header/Component.js');
|
|
21
21
|
|
|
22
22
|
function _interopDefaultCompat (e) { return e && typeof e === 'object' && 'default' in e ? e : { default: e }; }
|
|
@@ -25,11 +25,9 @@ var React__default = /*#__PURE__*/_interopDefaultCompat(React);
|
|
|
25
25
|
|
|
26
26
|
var VIRTUAL_OPTIONS_LIST_THRESHOLD = 30;
|
|
27
27
|
var SelectMobile = React.forwardRef(function (_a, ref) {
|
|
28
|
-
var _b = _a.autocomplete, autocomplete = _b === void 0 ? false : _b, _c = _a.multiple, multiple = _c === void 0 ? false : _c, _d = _a.allowUnselect, allowUnselect = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, _f = _a.closeOnSelect, closeOnSelect = _f === void 0 ? !multiple : _f, _g = _a.circularNavigation, circularNavigation = _g === void 0 ? false : _g, _h = _a.defaultOpen, defaultOpen = _h === void 0 ? false : _h, openProp = _a.open, _j = _a.size, size = _j === void 0 ? 56 : _j, _k = _a.optionsSize, optionsSize = _k === void 0 ? 56 : _k, _l = _a.fieldProps, fieldProps = _l === void 0 ? {} : _l, _m = _a.optionProps, optionProps = _m === void 0 ? {} : _m, _o = _a.optionsListProps, optionsListProps = _o === void 0 ? {} : _o, _p = _a.Arrow, Arrow = _p === void 0 ? components_arrow_Component.Arrow : _p, _q = _a.Field, Field = _q === void 0 ? components_field_Component.Field : _q, _r = _a.Optgroup, Optgroup = _r === void 0 ? components_optgroup_Component.Optgroup : _r, _s = _a.Option, Option = _s === void 0 ? components_option_Component.Option : _s, _t = _a.Search, Search = _t === void 0 ? components_search_Component.Search : _t, selected = _a.selected,
|
|
28
|
+
var _b = _a.autocomplete, autocomplete = _b === void 0 ? false : _b, _c = _a.multiple, multiple = _c === void 0 ? false : _c, _d = _a.allowUnselect, allowUnselect = _d === void 0 ? false : _d, _e = _a.disabled, disabled = _e === void 0 ? false : _e, _f = _a.closeOnSelect, closeOnSelect = _f === void 0 ? !multiple : _f, _g = _a.circularNavigation, circularNavigation = _g === void 0 ? false : _g, _h = _a.defaultOpen, defaultOpen = _h === void 0 ? false : _h, openProp = _a.open, _j = _a.size, size = _j === void 0 ? 56 : _j, _k = _a.optionsSize, optionsSize = _k === void 0 ? 56 : _k, _l = _a.fieldProps, fieldProps = _l === void 0 ? {} : _l, _m = _a.optionProps, optionProps = _m === void 0 ? {} : _m, _o = _a.optionsListProps, optionsListProps = _o === void 0 ? {} : _o, _p = _a.Arrow, Arrow = _p === void 0 ? components_arrow_Component.Arrow : _p, _q = _a.Field, Field = _q === void 0 ? components_field_Component.Field : _q, _r = _a.Optgroup, Optgroup = _r === void 0 ? components_optgroup_Component.Optgroup : _r, _s = _a.Option, Option = _s === void 0 ? components_option_Component.Option : _s, _t = _a.Search, Search = _t === void 0 ? components_search_Component.Search : _t, selected = _a.selected, options = _a.options, _u = _a.OptionsList, OptionsList = _u === void 0 ? options.length > VIRTUAL_OPTIONS_LIST_THRESHOLD
|
|
29
29
|
? components_virtualOptionsList_Component.VirtualOptionsList
|
|
30
|
-
: components_optionsList_Component.OptionsList :
|
|
31
|
-
var typedRestBottomSheetProps = restProps;
|
|
32
|
-
var typedRestModalProps = restProps;
|
|
30
|
+
: components_optionsList_Component.OptionsList : _u, onChange = _a.onChange, _v = _a.showClear, showClear = _v === void 0 ? true : _v, showSelectAll = _a.showSelectAll, showHeaderWithSelectAll = _a.showHeaderWithSelectAll, _w = _a.useWithApplyHook, useWithApplyHook = _w === void 0 ? multiple : _w, showSearch = _a.showSearch, searchProps = _a.searchProps, restProps = tslib.__rest(_a, ["autocomplete", "multiple", "allowUnselect", "disabled", "closeOnSelect", "circularNavigation", "defaultOpen", "open", "size", "optionsSize", "fieldProps", "optionProps", "optionsListProps", "Arrow", "Field", "Optgroup", "Option", "Search", "selected", "options", "OptionsList", "onChange", "showClear", "showSelectAll", "showHeaderWithSelectAll", "useWithApplyHook", "showSearch", "searchProps"]);
|
|
33
31
|
var applyProps = presets_useSelectWithApply_optionsListWithApply_Component.useSelectWithApply({
|
|
34
32
|
optionsListProps: tslib.__assign(tslib.__assign({}, optionsListProps), { Footer: components_footer_Component.Footer }),
|
|
35
33
|
OptionsList: OptionsList,
|
|
@@ -42,13 +40,13 @@ var SelectMobile = React.forwardRef(function (_a, ref) {
|
|
|
42
40
|
showSelectAll: showSelectAll,
|
|
43
41
|
});
|
|
44
42
|
var bottomAddons = useWithApplyHook && showHeaderWithSelectAll && (React__default.default.createElement(presets_useSelectWithApply_optionsListWithApply_header_Component.Header, tslib.__assign({}, applyProps.optionsListProps.headerProps, { mobile: true })));
|
|
45
|
-
return (React__default.default.createElement(components_baseSelect_Component.BaseSelect, tslib.__assign({ ref: ref, view: 'mobile', autocomplete: autocomplete, multiple: multiple, allowUnselect: allowUnselect, disabled: disabled, closeOnSelect: closeOnSelect, circularNavigation: circularNavigation, defaultOpen: defaultOpen, open: openProp, size: size, optionsSize: optionsSize, fieldProps: tslib.__assign({ FormControlComponent: mobile.FormControlMobile }, fieldProps), optionProps: optionProps, Arrow: Arrow, Field: Field, Optgroup: Optgroup, Option: Option, Search: Search,
|
|
43
|
+
return (React__default.default.createElement(components_baseSelect_Component.BaseSelect, tslib.__assign({ ref: ref, view: 'mobile', autocomplete: autocomplete, multiple: multiple, allowUnselect: allowUnselect, disabled: disabled, closeOnSelect: closeOnSelect, circularNavigation: circularNavigation, defaultOpen: defaultOpen, open: openProp, size: size, optionsSize: optionsSize, fieldProps: tslib.__assign({ FormControlComponent: mobile.FormControlMobile }, fieldProps), optionProps: optionProps, Arrow: Arrow, Field: Field, Optgroup: Optgroup, Option: Option, Search: Search, options: options, selected: selected, onChange: onChange, OptionsList: OptionsList, showSearch: showSearch, searchProps: searchProps, BottomSheet: coreComponentsBottomSheet.BottomSheet, ModalMobile: mobile$1.ModalMobile, optionsListProps: optionsListProps }, restProps, (restProps.isBottomSheet === false
|
|
46
44
|
? {
|
|
47
|
-
|
|
45
|
+
modalHeaderProps: tslib.__assign({ bottomAddons: bottomAddons }, restProps.modalHeaderProps),
|
|
48
46
|
}
|
|
49
47
|
: {
|
|
50
|
-
|
|
51
|
-
}),
|
|
48
|
+
bottomSheetProps: tslib.__assign({ bottomAddons: bottomAddons }, restProps.bottomSheetProps),
|
|
49
|
+
}), (useWithApplyHook && applyProps))));
|
|
52
50
|
});
|
|
53
51
|
|
|
54
52
|
exports.SelectMobile = SelectMobile;
|
|
@@ -2,7 +2,7 @@ import React from 'react';
|
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import { ChevronDownMIcon } from '@alfalab/icons-glyph/ChevronDownMIcon';
|
|
4
4
|
|
|
5
|
-
const styles = {"arrow":"
|
|
5
|
+
const styles = {"arrow":"select__arrow_1rwor","open":"select__open_1rwor"};
|
|
6
6
|
require('./index.css')
|
|
7
7
|
|
|
8
8
|
const Arrow = ({ open, className }) => (React.createElement(ChevronDownMIcon, { className: cn(styles.arrow, className, { [styles.open]: open }) }));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: n3hd3 */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root {
|
|
4
4
|
--color-light-neutral-translucent-700: rgba(4, 4, 21, 0.47); /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
@@ -26,13 +26,13 @@
|
|
|
26
26
|
/* checkmark */
|
|
27
27
|
|
|
28
28
|
/* optgroup */
|
|
29
|
-
} .
|
|
29
|
+
} .select__arrow_1rwor {
|
|
30
30
|
display: block;
|
|
31
31
|
width: 24px;
|
|
32
32
|
height: 24px;
|
|
33
33
|
color: var(--select-arrow-color);
|
|
34
34
|
|
|
35
35
|
transition: transform 0.15s ease-in-out, opacity 0.2s ease;
|
|
36
|
-
} .
|
|
36
|
+
} .select__open_1rwor {
|
|
37
37
|
transform: var(--arrow-transform);
|
|
38
38
|
}
|
|
@@ -3,7 +3,7 @@ import cn from 'classnames';
|
|
|
3
3
|
import { Checkbox } from '@alfalab/core-components-checkbox/modern';
|
|
4
4
|
import { CheckmarkMIcon } from '@alfalab/icons-glyph/CheckmarkMIcon';
|
|
5
5
|
|
|
6
|
-
const styles = {"checkmark":"
|
|
6
|
+
const styles = {"checkmark":"select__checkmark_86mjr","single":"select__single_86mjr","selected":"select__selected_86mjr"};
|
|
7
7
|
require('./index.css')
|
|
8
8
|
|
|
9
9
|
const BaseCheckmark = ({ selected, disabled = false, className, multiple, }) => {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* hash:
|
|
1
|
+
/* hash: le819 */
|
|
2
2
|
:root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
3
3
|
} /* deprecated */ :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
4
4
|
} :root { /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */ /* deprecated */
|
|
@@ -23,14 +23,14 @@
|
|
|
23
23
|
/* checkmark */
|
|
24
24
|
|
|
25
25
|
/* optgroup */
|
|
26
|
-
} .
|
|
26
|
+
} .select__checkmark_86mjr {
|
|
27
27
|
flex-shrink: 0;
|
|
28
28
|
box-sizing: border-box;
|
|
29
|
-
} .
|
|
29
|
+
} .select__single_86mjr {
|
|
30
30
|
display: flex;
|
|
31
31
|
align-items: center;
|
|
32
32
|
justify-content: center;
|
|
33
33
|
opacity: 0
|
|
34
|
-
} .
|
|
34
|
+
} .select__single_86mjr.select__selected_86mjr {
|
|
35
35
|
opacity: 1;
|
|
36
36
|
}
|
|
@@ -2,7 +2,7 @@ import React, { isValidElement } from 'react';
|
|
|
2
2
|
import cn from 'classnames';
|
|
3
3
|
import { BaseCheckmark } from '../base-checkmark/Component.js';
|
|
4
4
|
|
|
5
|
-
const styles = {"option":"
|
|
5
|
+
const styles = {"option":"select__option_19xyo","disabled":"select__disabled_19xyo","checkmarkBefore":"select__checkmarkBefore_19xyo","mobile":"select__mobile_19xyo","checkmarkAfter":"select__checkmarkAfter_19xyo","textContent":"select__textContent_19xyo","selected":"select__selected_19xyo","highlighted":"select__highlighted_19xyo","checkmarkBeforeContent":"select__checkmarkBeforeContent_19xyo","checkmarkAfterContent":"select__checkmarkAfterContent_19xyo","content":"select__content_19xyo"};
|
|
6
6
|
require('./index.css')
|
|
7
7
|
|
|
8
8
|
const BaseOption = ({ className, option, children, selected, highlighted, disabled, multiple, Checkmark = BaseCheckmark, checkmarkPosition = multiple ? 'before' : 'after', innerProps, dataTestId, mobile = false, }) => {
|