@alfalab/core-components-select 10.6.4 → 10.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/dist/Component-9404bb50.d.ts +33 -0
- package/dist/Component-9404bb50.js +359 -0
- package/dist/Component-b963ee30.d.ts +5 -0
- package/dist/Component-b963ee30.js +247 -0
- package/dist/Component.d.ts +1 -1
- package/dist/Component.js +2 -2
- package/dist/components/arrow/Component.js +1 -1
- package/dist/components/arrow/index.css +3 -3
- package/dist/components/base-select/Component.d.ts +0 -5
- package/dist/components/base-select/Component.js +11 -241
- package/dist/components/base-select/index.css +7 -7
- package/dist/components/base-select/index.d.ts +1 -1
- package/dist/components/base-select/index.js +2 -2
- package/dist/components/checkmark/Component.js +1 -1
- package/dist/components/checkmark/index.css +7 -7
- package/dist/components/field/Component.js +2 -2
- package/dist/components/field/index.css +9 -9
- package/dist/components/field/index.js +1 -1
- package/dist/components/index.d.ts +1 -0
- package/dist/components/index.js +12 -2
- package/dist/components/native-select/Component.js +1 -1
- package/dist/components/native-select/index.js +1 -1
- package/dist/components/optgroup/Component.d.ts +1 -1
- package/dist/components/optgroup/Component.js +3 -3
- package/dist/components/optgroup/index.css +6 -6
- package/dist/components/option/Component.js +2 -2
- package/dist/components/option/index.css +20 -20
- package/dist/components/option/index.js +1 -1
- package/dist/components/options-list/Component.js +4 -4
- package/dist/components/options-list/index.css +6 -6
- package/dist/components/options-list/index.js +1 -1
- package/dist/components/select-mobile/Component.d.ts +0 -0
- package/dist/components/select-mobile/Component.js +38 -0
- package/dist/components/select-mobile/checkmark/Component.d.ts +4 -0
- package/dist/components/select-mobile/checkmark/Component.js +24 -0
- package/dist/components/select-mobile/checkmark/index.css +37 -0
- package/dist/components/select-mobile/checkmark/index.d.ts +1 -0
- package/dist/components/select-mobile/checkmark/index.js +11 -0
- package/dist/components/select-mobile/index.css +68 -0
- package/dist/components/select-mobile/index.d.ts +1 -0
- package/dist/components/select-mobile/index.js +38 -0
- package/dist/components/select-mobile/options-list/Component.d.ts +4 -0
- package/dist/components/select-mobile/options-list/Component.js +51 -0
- package/dist/components/select-mobile/options-list/index.css +65 -0
- package/dist/components/select-mobile/options-list/index.d.ts +1 -0
- package/dist/components/select-mobile/options-list/index.js +16 -0
- package/dist/components/virtual-options-list/Component.js +2 -2
- package/dist/components/virtual-options-list/index.css +12 -12
- package/dist/components/virtual-options-list/index.js +1 -1
- package/dist/cssm/Component-9bc41b6c.d.ts +5 -0
- package/dist/cssm/Component-9bc41b6c.js +246 -0
- package/dist/cssm/Component-d45c0e41.d.ts +33 -0
- package/dist/cssm/Component-d45c0e41.js +365 -0
- package/dist/cssm/Component.d.ts +1 -1
- package/dist/cssm/Component.js +1 -1
- package/dist/cssm/components/base-select/Component.d.ts +0 -5
- package/dist/cssm/components/base-select/Component.js +12 -240
- package/dist/cssm/components/base-select/index.d.ts +1 -1
- package/dist/cssm/components/base-select/index.js +1 -1
- package/dist/cssm/components/index.d.ts +1 -0
- package/dist/cssm/components/index.js +17 -1
- package/dist/cssm/components/optgroup/Component.d.ts +1 -1
- package/dist/cssm/components/optgroup/Component.js +2 -2
- package/dist/cssm/components/options-list/Component.js +2 -2
- package/dist/cssm/components/select-mobile/Component.d.ts +0 -0
- package/dist/cssm/components/select-mobile/Component.js +52 -0
- package/dist/cssm/components/select-mobile/checkmark/Component.d.ts +4 -0
- package/dist/cssm/components/select-mobile/checkmark/Component.js +23 -0
- package/dist/cssm/components/select-mobile/checkmark/index.d.ts +1 -0
- package/dist/cssm/components/select-mobile/checkmark/index.js +12 -0
- package/dist/cssm/components/select-mobile/checkmark/index.module.css +36 -0
- package/dist/cssm/components/select-mobile/index.d.ts +1 -0
- package/dist/cssm/components/select-mobile/index.js +52 -0
- package/dist/cssm/components/select-mobile/index.module.css +67 -0
- package/dist/cssm/components/select-mobile/options-list/Component.d.ts +4 -0
- package/dist/cssm/components/select-mobile/options-list/Component.js +51 -0
- package/dist/cssm/components/select-mobile/options-list/index.d.ts +1 -0
- package/dist/cssm/components/select-mobile/options-list/index.js +18 -0
- package/dist/cssm/components/select-mobile/options-list/index.module.css +64 -0
- package/dist/cssm/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/dist/cssm/hook-f5b8fe4f.d.ts +3 -3
- package/dist/cssm/index.js +14 -6
- package/dist/cssm/presets/index.js +13 -6
- package/dist/cssm/presets/useSelectWithApply/hook.js +13 -6
- package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/Component.js +12 -5
- package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/dist/cssm/presets/useSelectWithApply/options-list-with-apply/index.js +12 -5
- package/dist/cssm/typings.d.ts +29 -0
- package/dist/esm/Component-25510e34.d.ts +33 -0
- package/dist/esm/Component-25510e34.js +348 -0
- package/dist/esm/Component-385efde8.d.ts +5 -0
- package/dist/esm/Component-385efde8.js +238 -0
- package/dist/esm/Component.d.ts +1 -1
- package/dist/esm/Component.js +2 -2
- package/dist/esm/components/arrow/Component.js +1 -1
- package/dist/esm/components/arrow/index.css +3 -3
- package/dist/esm/components/base-select/Component.d.ts +0 -5
- package/dist/esm/components/base-select/Component.js +10 -238
- package/dist/esm/components/base-select/index.css +7 -7
- package/dist/esm/components/base-select/index.d.ts +1 -1
- package/dist/esm/components/base-select/index.js +2 -2
- package/dist/esm/components/checkmark/Component.js +1 -1
- package/dist/esm/components/checkmark/index.css +7 -7
- package/dist/esm/components/field/Component.js +2 -2
- package/dist/esm/components/field/index.css +9 -9
- package/dist/esm/components/field/index.js +1 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/index.js +11 -2
- package/dist/esm/components/native-select/Component.js +1 -1
- package/dist/esm/components/native-select/index.js +1 -1
- package/dist/esm/components/optgroup/Component.d.ts +1 -1
- package/dist/esm/components/optgroup/Component.js +3 -3
- package/dist/esm/components/optgroup/index.css +6 -6
- package/dist/esm/components/option/Component.js +2 -2
- package/dist/esm/components/option/index.css +20 -20
- package/dist/esm/components/option/index.js +1 -1
- package/dist/esm/components/options-list/Component.js +4 -4
- package/dist/esm/components/options-list/index.css +6 -6
- package/dist/esm/components/options-list/index.js +1 -1
- package/dist/esm/components/select-mobile/Component.d.ts +0 -0
- package/dist/esm/components/select-mobile/Component.js +30 -0
- package/dist/esm/components/select-mobile/checkmark/Component.d.ts +4 -0
- package/dist/esm/components/select-mobile/checkmark/Component.js +15 -0
- package/dist/esm/components/select-mobile/checkmark/index.css +37 -0
- package/dist/esm/components/select-mobile/checkmark/index.d.ts +1 -0
- package/dist/esm/components/select-mobile/checkmark/index.js +3 -0
- package/dist/esm/components/select-mobile/index.css +68 -0
- package/dist/esm/components/select-mobile/index.d.ts +1 -0
- package/dist/esm/components/select-mobile/index.js +30 -0
- package/dist/esm/components/select-mobile/options-list/Component.d.ts +4 -0
- package/dist/esm/components/select-mobile/options-list/Component.js +42 -0
- package/dist/esm/components/select-mobile/options-list/index.css +65 -0
- package/dist/esm/components/select-mobile/options-list/index.d.ts +1 -0
- package/dist/esm/components/select-mobile/options-list/index.js +8 -0
- package/dist/esm/components/virtual-options-list/Component.js +2 -2
- package/dist/esm/components/virtual-options-list/index.css +12 -12
- package/dist/esm/components/virtual-options-list/index.js +1 -1
- package/dist/esm/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/dist/esm/hook-f5b8fe4f.d.ts +3 -3
- package/dist/esm/index.js +9 -5
- package/dist/esm/{intersection-observer-812c9e4f.d.ts → intersection-observer-0bdc3704.d.ts} +0 -0
- package/dist/esm/{intersection-observer-812c9e4f.js → intersection-observer-0bdc3704.js} +0 -0
- package/dist/esm/presets/index.js +9 -5
- package/dist/esm/presets/useLazyLoading/hook.js +3 -3
- package/dist/esm/presets/useLazyLoading/index.css +2 -2
- package/dist/esm/presets/useSelectWithApply/hook.js +9 -5
- package/dist/esm/presets/useSelectWithApply/options-list-with-apply/Component.js +9 -5
- package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
- package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/dist/esm/presets/useSelectWithApply/options-list-with-apply/index.js +9 -5
- package/dist/esm/presets/useSelectWithLoading/hook.js +2 -2
- package/dist/esm/presets/useSelectWithLoading/index.css +2 -2
- package/dist/esm/{tslib.es6-de132685.d.ts → tslib.es6-a9457d88.d.ts} +0 -0
- package/dist/esm/{tslib.es6-de132685.js → tslib.es6-a9457d88.js} +0 -0
- package/dist/esm/typings.d.ts +29 -0
- package/dist/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/dist/hook-f5b8fe4f.d.ts +3 -3
- package/dist/index.js +12 -7
- package/dist/{intersection-observer-25b5554f.d.ts → intersection-observer-0fef5c01.d.ts} +0 -0
- package/dist/{intersection-observer-25b5554f.js → intersection-observer-0fef5c01.js} +0 -0
- package/dist/modern/Component-17dae8dc.d.ts +33 -0
- package/dist/modern/Component-17dae8dc.js +363 -0
- package/dist/modern/Component-e21aa51b.d.ts +5 -0
- package/dist/modern/Component-e21aa51b.js +247 -0
- package/dist/modern/Component.d.ts +1 -1
- package/dist/modern/Component.js +1 -1
- package/dist/modern/components/arrow/Component.js +1 -1
- package/dist/modern/components/arrow/index.css +3 -3
- package/dist/modern/components/base-select/Component.d.ts +0 -5
- package/dist/modern/components/base-select/Component.js +9 -247
- package/dist/modern/components/base-select/index.css +7 -7
- package/dist/modern/components/base-select/index.d.ts +1 -1
- package/dist/modern/components/base-select/index.js +1 -1
- package/dist/modern/components/checkmark/Component.js +1 -1
- package/dist/modern/components/checkmark/index.css +7 -7
- package/dist/modern/components/field/Component.js +1 -1
- package/dist/modern/components/field/index.css +9 -9
- package/dist/modern/components/index.d.ts +1 -0
- package/dist/modern/components/index.js +10 -1
- package/dist/modern/components/optgroup/Component.d.ts +1 -1
- package/dist/modern/components/optgroup/Component.js +3 -3
- package/dist/modern/components/optgroup/index.css +6 -6
- package/dist/modern/components/option/Component.js +1 -1
- package/dist/modern/components/option/index.css +20 -20
- package/dist/modern/components/options-list/Component.js +3 -3
- package/dist/modern/components/options-list/index.css +6 -6
- package/dist/modern/components/select-mobile/Component.d.ts +0 -0
- package/dist/modern/components/select-mobile/Component.js +29 -0
- package/dist/modern/components/select-mobile/checkmark/Component.d.ts +4 -0
- package/dist/modern/components/select-mobile/checkmark/Component.js +11 -0
- package/dist/modern/components/select-mobile/checkmark/index.css +37 -0
- package/dist/modern/components/select-mobile/checkmark/index.d.ts +1 -0
- package/dist/modern/components/select-mobile/checkmark/index.js +3 -0
- package/dist/modern/components/select-mobile/index.css +68 -0
- package/dist/modern/components/select-mobile/index.d.ts +1 -0
- package/dist/modern/components/select-mobile/index.js +29 -0
- package/dist/modern/components/select-mobile/options-list/Component.d.ts +4 -0
- package/dist/modern/components/select-mobile/options-list/Component.js +37 -0
- package/dist/modern/components/select-mobile/options-list/index.css +65 -0
- package/dist/modern/components/select-mobile/options-list/index.d.ts +1 -0
- package/dist/modern/components/select-mobile/options-list/index.js +7 -0
- package/dist/modern/components/virtual-options-list/Component.js +1 -1
- package/dist/modern/components/virtual-options-list/index.css +12 -12
- package/dist/modern/getDataTestId-3fe0d3e6.d.ts +2 -0
- package/dist/modern/hook-f5b8fe4f.d.ts +3 -3
- package/dist/modern/index.js +8 -4
- package/dist/modern/{intersection-observer-812c9e4f.d.ts → intersection-observer-0bdc3704.d.ts} +0 -0
- package/dist/modern/{intersection-observer-812c9e4f.js → intersection-observer-0bdc3704.js} +0 -0
- package/dist/modern/presets/index.js +8 -4
- package/dist/modern/presets/useLazyLoading/hook.js +2 -2
- package/dist/modern/presets/useLazyLoading/index.css +2 -2
- package/dist/modern/presets/useSelectWithApply/hook.js +8 -4
- package/dist/modern/presets/useSelectWithApply/options-list-with-apply/Component.js +8 -4
- package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
- package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/dist/modern/presets/useSelectWithApply/options-list-with-apply/index.js +8 -4
- package/dist/modern/presets/useSelectWithLoading/hook.js +1 -1
- package/dist/modern/presets/useSelectWithLoading/index.css +2 -2
- package/dist/modern/typings.d.ts +29 -0
- package/dist/presets/index.js +11 -7
- package/dist/presets/useLazyLoading/hook.js +3 -3
- package/dist/presets/useLazyLoading/index.css +2 -2
- package/dist/presets/useSelectWithApply/hook.js +11 -7
- package/dist/presets/useSelectWithApply/options-list-with-apply/Component.js +10 -6
- package/dist/presets/useSelectWithApply/options-list-with-apply/index.css +4 -4
- package/dist/presets/useSelectWithApply/options-list-with-apply/index.d.ts +1 -1
- package/dist/presets/useSelectWithApply/options-list-with-apply/index.js +10 -6
- package/dist/presets/useSelectWithLoading/hook.js +2 -2
- package/dist/presets/useSelectWithLoading/index.css +2 -2
- package/dist/{tslib.es6-2027080d.d.ts → tslib.es6-b9d0d522.d.ts} +0 -0
- package/dist/{tslib.es6-2027080d.js → tslib.es6-b9d0d522.js} +0 -0
- package/dist/typings.d.ts +29 -0
- package/package.json +14 -12
- package/dist/cssm/hook-3b9bd559.d.ts +0 -12
- package/dist/cssm/hook-3b9bd559.js +0 -147
- package/dist/esm/hook-73d6fe0f.d.ts +0 -12
- package/dist/esm/hook-73d6fe0f.js +0 -131
- package/dist/hook-81a989b0.d.ts +0 -12
- package/dist/hook-81a989b0.js +0 -140
- package/dist/modern/hook-42b89ed1.d.ts +0 -12
- package/dist/modern/hook-42b89ed1.js +0 -132
|
@@ -2,246 +2,18 @@
|
|
|
2
2
|
|
|
3
3
|
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
var
|
|
5
|
+
require('../../tslib.es6-f8106a15.js');
|
|
6
|
+
require('react');
|
|
7
|
+
require('classnames');
|
|
8
|
+
require('../../utils.js');
|
|
9
|
+
require('react-merge-refs');
|
|
10
|
+
require('resize-observer');
|
|
11
|
+
require('@alfalab/core-components-popover/dist/cssm');
|
|
12
|
+
require('downshift');
|
|
13
|
+
require('../native-select/Component.js');
|
|
14
|
+
var components_baseSelect_Component = require('../../Component-9bc41b6c.js');
|
|
15
|
+
require('./index.module.css');
|
|
15
16
|
|
|
16
|
-
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
17
17
|
|
|
18
|
-
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
19
|
-
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
20
|
-
var mergeRefs__default = /*#__PURE__*/_interopDefaultLegacy(mergeRefs);
|
|
21
|
-
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
22
18
|
|
|
23
|
-
|
|
24
|
-
var elementPart = element ? "-" + element.toLowerCase() : '';
|
|
25
|
-
return dataTestId ? "" + dataTestId + elementPart : undefined;
|
|
26
|
-
};
|
|
27
|
-
|
|
28
|
-
var BaseSelect = React.forwardRef(function (_a, ref) {
|
|
29
|
-
var _b;
|
|
30
|
-
var dataTestId = _a.dataTestId, className = _a.className, fieldClassName = _a.fieldClassName, optionsListClassName = _a.optionsListClassName, optionClassName = _a.optionClassName, popperClassName = _a.popperClassName, options = _a.options, _c = _a.autocomplete, autocomplete = _c === void 0 ? false : _c, _d = _a.multiple, multiple = _d === void 0 ? false : _d, _e = _a.allowUnselect, allowUnselect = _e === void 0 ? false : _e, _f = _a.disabled, disabled = _f === void 0 ? false : _f, _g = _a.closeOnSelect, closeOnSelect = _g === void 0 ? !multiple : _g, _h = _a.circularNavigation, circularNavigation = _h === void 0 ? false : _h, _j = _a.nativeSelect, nativeSelect = _j === void 0 ? false : _j, _k = _a.defaultOpen, defaultOpen = _k === void 0 ? false : _k, openProp = _a.open, _l = _a.popoverPosition, popoverPosition = _l === void 0 ? 'bottom-start' : _l, _m = _a.preventFlip, preventFlip = _m === void 0 ? true : _m, _o = _a.optionsListWidth, optionsListWidth = _o === void 0 ? 'content' : _o, name = _a.name, id = _a.id, selected = _a.selected, _p = _a.size, size = _p === void 0 ? 's' : _p, _q = _a.optionsSize, optionsSize = _q === void 0 ? size : _q, error = _a.error, hint = _a.hint, block = _a.block, label = _a.label, placeholder = _a.placeholder, _r = _a.fieldProps, fieldProps = _r === void 0 ? {} : _r, _s = _a.optionsListProps, optionsListProps = _s === void 0 ? {} : _s, _t = _a.optionProps, optionProps = _t === void 0 ? {} : _t, valueRenderer = _a.valueRenderer, onChange = _a.onChange, onOpen = _a.onOpen, onFocus = _a.onFocus, onBlur = _a.onBlur, onScroll = _a.onScroll, Arrow = _a.Arrow, _u = _a.Field, Field = _u === void 0 ? function () { return null; } : _u, _v = _a.OptionsList, OptionsList = _v === void 0 ? function () { return null; } : _v, _w = _a.Optgroup, Optgroup = _w === void 0 ? function () { return null; } : _w, _x = _a.Option, Option = _x === void 0 ? function () { return null; } : _x, updatePopover = _a.updatePopover, zIndexPopover = _a.zIndexPopover, _y = _a.showEmptyOptionsList, showEmptyOptionsList = _y === void 0 ? false : _y, visibleOptions = _a.visibleOptions;
|
|
31
|
-
var rootRef = React.useRef(null);
|
|
32
|
-
var fieldRef = React.useRef(null);
|
|
33
|
-
var listRef = React.useRef(null);
|
|
34
|
-
var initiatorRef = React.useRef(null);
|
|
35
|
-
var itemToString = function (option) { return (option ? option.key : ''); };
|
|
36
|
-
var _z = React.useMemo(function () { return utils.processOptions(options, selected); }, [
|
|
37
|
-
options,
|
|
38
|
-
selected,
|
|
39
|
-
]), flatOptions = _z.flatOptions, selectedOptions = _z.selectedOptions;
|
|
40
|
-
var useMultipleSelectionProps = {
|
|
41
|
-
itemToString: itemToString,
|
|
42
|
-
onSelectedItemsChange: function (changes) {
|
|
43
|
-
if (onChange) {
|
|
44
|
-
var _a = changes.selectedItems, selectedItems_1 = _a === void 0 ? [] : _a;
|
|
45
|
-
onChange({
|
|
46
|
-
selectedMultiple: selectedItems_1,
|
|
47
|
-
selected: selectedItems_1.length ? selectedItems_1[0] : null,
|
|
48
|
-
initiator: initiatorRef.current,
|
|
49
|
-
name: name,
|
|
50
|
-
});
|
|
51
|
-
initiatorRef.current = null;
|
|
52
|
-
}
|
|
53
|
-
},
|
|
54
|
-
stateReducer: function (state, actionAndChanges) {
|
|
55
|
-
var type = actionAndChanges.type, changes = actionAndChanges.changes;
|
|
56
|
-
if (!allowUnselect &&
|
|
57
|
-
type === downshift.useMultipleSelection.stateChangeTypes.DropdownKeyDownBackspace) {
|
|
58
|
-
return state;
|
|
59
|
-
}
|
|
60
|
-
return changes;
|
|
61
|
-
},
|
|
62
|
-
};
|
|
63
|
-
if (selected !== undefined) {
|
|
64
|
-
useMultipleSelectionProps.selectedItems = selectedOptions;
|
|
65
|
-
}
|
|
66
|
-
var _0 = downshift.useMultipleSelection(useMultipleSelectionProps), selectedItems = _0.selectedItems, addSelectedItem = _0.addSelectedItem, setSelectedItems = _0.setSelectedItems, removeSelectedItem = _0.removeSelectedItem, getDropdownProps = _0.getDropdownProps;
|
|
67
|
-
var _1 = downshift.useCombobox({
|
|
68
|
-
id: id,
|
|
69
|
-
isOpen: openProp,
|
|
70
|
-
circularNavigation: circularNavigation,
|
|
71
|
-
items: flatOptions,
|
|
72
|
-
itemToString: itemToString,
|
|
73
|
-
defaultHighlightedIndex: selectedItems.length === 0 ? -1 : undefined,
|
|
74
|
-
onIsOpenChange: function (changes) {
|
|
75
|
-
if (onOpen) {
|
|
76
|
-
/**
|
|
77
|
-
* Вызываем обработчик асинхронно.
|
|
78
|
-
*
|
|
79
|
-
* Иначе при клике вне открытого селекта сначала сработает onOpen, который закроет селект,
|
|
80
|
-
* А затем сработает onClick кнопки открытия\закрытия с open=false и в итоге селект откроется снова.
|
|
81
|
-
*/
|
|
82
|
-
setTimeout(function () {
|
|
83
|
-
onOpen({
|
|
84
|
-
open: changes.isOpen,
|
|
85
|
-
name: name,
|
|
86
|
-
});
|
|
87
|
-
}, 0);
|
|
88
|
-
}
|
|
89
|
-
},
|
|
90
|
-
stateReducer: function (state, actionAndChanges) {
|
|
91
|
-
var type = actionAndChanges.type, changes = actionAndChanges.changes;
|
|
92
|
-
var selectedItem = changes.selectedItem;
|
|
93
|
-
switch (type) {
|
|
94
|
-
case downshift.useCombobox.stateChangeTypes.InputKeyDownEnter:
|
|
95
|
-
case downshift.useCombobox.stateChangeTypes.ItemClick:
|
|
96
|
-
initiatorRef.current = selectedItem;
|
|
97
|
-
if (selectedItem && !selectedItem.disabled) {
|
|
98
|
-
var alreadySelected = selectedItems.includes(selectedItem);
|
|
99
|
-
var allowRemove = allowUnselect || (multiple && selectedItems.length > 1);
|
|
100
|
-
if (alreadySelected && allowRemove) {
|
|
101
|
-
removeSelectedItem(selectedItem);
|
|
102
|
-
}
|
|
103
|
-
if (!alreadySelected) {
|
|
104
|
-
if (multiple) {
|
|
105
|
-
addSelectedItem(selectedItem);
|
|
106
|
-
}
|
|
107
|
-
else {
|
|
108
|
-
setSelectedItems([selectedItem]);
|
|
109
|
-
}
|
|
110
|
-
}
|
|
111
|
-
}
|
|
112
|
-
return tslib_es6.__assign(tslib_es6.__assign({}, changes), { isOpen: !closeOnSelect,
|
|
113
|
-
// при closeOnSelect === false - сохраняем подсвеченный индекс
|
|
114
|
-
highlightedIndex: state.isOpen && !closeOnSelect
|
|
115
|
-
? state.highlightedIndex
|
|
116
|
-
: changes.highlightedIndex });
|
|
117
|
-
default:
|
|
118
|
-
return changes;
|
|
119
|
-
}
|
|
120
|
-
},
|
|
121
|
-
}), open = _1.isOpen, getMenuProps = _1.getMenuProps, getInputProps = _1.getInputProps, getItemProps = _1.getItemProps, getComboboxProps = _1.getComboboxProps, getLabelProps = _1.getLabelProps, highlightedIndex = _1.highlightedIndex, toggleMenu = _1.toggleMenu, openMenu = _1.openMenu;
|
|
122
|
-
var menuProps = getMenuProps({ ref: listRef }, { suppressRefError: true });
|
|
123
|
-
var inputProps = getInputProps(getDropdownProps({ ref: mergeRefs__default['default']([ref, fieldRef]) }));
|
|
124
|
-
var handleFieldFocus = function (event) {
|
|
125
|
-
if (onFocus)
|
|
126
|
-
onFocus(event);
|
|
127
|
-
if (autocomplete && !open) {
|
|
128
|
-
openMenu();
|
|
129
|
-
}
|
|
130
|
-
};
|
|
131
|
-
var handleFieldBlur = function (event) {
|
|
132
|
-
var _a;
|
|
133
|
-
var isNextFocusInsideList = (_a = listRef.current) === null || _a === void 0 ? void 0 : _a.contains((event.relatedTarget || document.activeElement));
|
|
134
|
-
if (!isNextFocusInsideList) {
|
|
135
|
-
if (onBlur)
|
|
136
|
-
onBlur(event);
|
|
137
|
-
inputProps.onBlur(event);
|
|
138
|
-
}
|
|
139
|
-
};
|
|
140
|
-
var handleFieldKeyDown = function (event) {
|
|
141
|
-
inputProps.onKeyDown(event);
|
|
142
|
-
if (autocomplete && !open && (event.key.length === 1 || event.key === 'Backspace')) {
|
|
143
|
-
// Для автокомплита - открываем меню при начале ввода
|
|
144
|
-
openMenu();
|
|
145
|
-
}
|
|
146
|
-
if ([' ', 'Enter'].includes(event.key) &&
|
|
147
|
-
!autocomplete &&
|
|
148
|
-
!nativeSelect &&
|
|
149
|
-
event.target.tagName !== 'INPUT' &&
|
|
150
|
-
event.target.tagName !== 'BUTTON') {
|
|
151
|
-
// Открываем\закрываем меню по нажатию enter или пробела
|
|
152
|
-
event.preventDefault();
|
|
153
|
-
if (!open || highlightedIndex === -1)
|
|
154
|
-
toggleMenu();
|
|
155
|
-
}
|
|
156
|
-
};
|
|
157
|
-
var handleFieldClick = function (event) {
|
|
158
|
-
if (!autocomplete || event.target.tagName !== 'INPUT') {
|
|
159
|
-
toggleMenu();
|
|
160
|
-
}
|
|
161
|
-
else {
|
|
162
|
-
openMenu();
|
|
163
|
-
}
|
|
164
|
-
};
|
|
165
|
-
var handleNativeSelectChange = React.useCallback(function (event) {
|
|
166
|
-
setSelectedItems(tslib_es6.__spreadArrays(event.target.options).reduce(function (acc, option, index) {
|
|
167
|
-
return option.selected ? acc.concat(flatOptions[index]) : acc;
|
|
168
|
-
}, []));
|
|
169
|
-
}, [flatOptions, setSelectedItems]);
|
|
170
|
-
var getOptionProps = React.useCallback(function (option, index) { return (tslib_es6.__assign(tslib_es6.__assign({}, optionProps), { className: optionClassName, innerProps: getItemProps({
|
|
171
|
-
index: index,
|
|
172
|
-
item: option,
|
|
173
|
-
disabled: option.disabled,
|
|
174
|
-
onMouseDown: function (event) { return event.preventDefault(); },
|
|
175
|
-
}), multiple: multiple,
|
|
176
|
-
index: index,
|
|
177
|
-
option: option, size: optionsSize, disabled: option.disabled, highlighted: index === highlightedIndex, selected: selectedItems.includes(option), dataTestId: getDataTestId(dataTestId, 'option') })); }, [
|
|
178
|
-
dataTestId,
|
|
179
|
-
getItemProps,
|
|
180
|
-
highlightedIndex,
|
|
181
|
-
multiple,
|
|
182
|
-
optionClassName,
|
|
183
|
-
optionProps,
|
|
184
|
-
optionsSize,
|
|
185
|
-
selectedItems,
|
|
186
|
-
]);
|
|
187
|
-
React.useEffect(function () {
|
|
188
|
-
if (defaultOpen)
|
|
189
|
-
openMenu();
|
|
190
|
-
}, [defaultOpen, openMenu]);
|
|
191
|
-
React.useEffect(function () {
|
|
192
|
-
if (openProp) {
|
|
193
|
-
openMenu();
|
|
194
|
-
}
|
|
195
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
196
|
-
}, []);
|
|
197
|
-
var calcOptionsListWidth = React.useCallback(function () {
|
|
198
|
-
if (listRef.current) {
|
|
199
|
-
var widthAttr = optionsListWidth === 'field' ? 'width' : 'minWidth';
|
|
200
|
-
var optionsListMinWidth = rootRef.current
|
|
201
|
-
? rootRef.current.getBoundingClientRect().width
|
|
202
|
-
: 0;
|
|
203
|
-
listRef.current.setAttribute('style', '');
|
|
204
|
-
listRef.current.style[widthAttr] = optionsListMinWidth + "px";
|
|
205
|
-
}
|
|
206
|
-
}, [optionsListWidth]);
|
|
207
|
-
React.useEffect(function () {
|
|
208
|
-
var observer = new resizeObserver.ResizeObserver(calcOptionsListWidth);
|
|
209
|
-
if (rootRef.current) {
|
|
210
|
-
observer.observe(rootRef.current);
|
|
211
|
-
}
|
|
212
|
-
return function () {
|
|
213
|
-
observer.disconnect();
|
|
214
|
-
};
|
|
215
|
-
}, [calcOptionsListWidth, open, optionsListWidth]);
|
|
216
|
-
React.useLayoutEffect(calcOptionsListWidth, [open, optionsListWidth, options, selectedItems]);
|
|
217
|
-
var renderValue = React.useCallback(function () {
|
|
218
|
-
return selectedItems.map(function (option) { return (React__default['default'].createElement("input", { type: 'hidden', name: name, value: option.key, key: option.key })); });
|
|
219
|
-
}, [selectedItems, name]);
|
|
220
|
-
var renderNativeSelect = React.useCallback(function () {
|
|
221
|
-
var value = multiple
|
|
222
|
-
? selectedItems.map(function (option) { return option.key; })
|
|
223
|
-
: (selectedItems[0] || {}).key;
|
|
224
|
-
return (React__default['default'].createElement(components_nativeSelect_Component.NativeSelect, tslib_es6.__assign({}, menuProps, { className: styles__default['default'].nativeSelect, disabled: disabled, multiple: multiple, name: name, value: value, onChange: handleNativeSelectChange, options: options })));
|
|
225
|
-
}, [multiple, selectedItems, disabled, name, handleNativeSelectChange, options, menuProps]);
|
|
226
|
-
var needRenderOptionsList = flatOptions.length > 0 || showEmptyOptionsList;
|
|
227
|
-
return (React__default['default'].createElement("div", tslib_es6.__assign({}, getComboboxProps(tslib_es6.__assign(tslib_es6.__assign({ ref: rootRef }, (disabled && { 'aria-disabled': true })), { className: cn__default['default'](styles__default['default'].component, (_b = {}, _b[styles__default['default'].block] = block, _b), className) })), { onKeyDown: disabled ? undefined : handleFieldKeyDown, tabIndex: -1, "data-test-id": getDataTestId(dataTestId) }),
|
|
228
|
-
nativeSelect && renderNativeSelect(),
|
|
229
|
-
React__default['default'].createElement(Field, tslib_es6.__assign({ selectedMultiple: selectedItems, selected: selectedItems[0], setSelectedItems: setSelectedItems, toggleMenu: toggleMenu, multiple: multiple, open: open, disabled: disabled, size: size, placeholder: placeholder, label: label && React__default['default'].createElement("span", tslib_es6.__assign({}, getLabelProps()), label), Arrow: Arrow && React__default['default'].createElement(Arrow, { open: open }), error: error, hint: hint, valueRenderer: valueRenderer, className: fieldClassName, innerProps: {
|
|
230
|
-
onBlur: handleFieldBlur,
|
|
231
|
-
onFocus: disabled ? undefined : handleFieldFocus,
|
|
232
|
-
onClick: disabled ? undefined : handleFieldClick,
|
|
233
|
-
tabIndex: nativeSelect || disabled ? -1 : 0,
|
|
234
|
-
ref: mergeRefs__default['default']([inputProps.ref]),
|
|
235
|
-
id: inputProps.id,
|
|
236
|
-
'aria-labelledby': inputProps['aria-labelledby'],
|
|
237
|
-
'aria-controls': inputProps['aria-controls'],
|
|
238
|
-
'aria-autocomplete': autocomplete
|
|
239
|
-
? inputProps['aria-autocomplete']
|
|
240
|
-
: undefined,
|
|
241
|
-
}, dataTestId: getDataTestId(dataTestId, 'field') }, fieldProps)),
|
|
242
|
-
name && !nativeSelect && renderValue(),
|
|
243
|
-
!nativeSelect && (React__default['default'].createElement(coreComponentsPopover.Popover, { open: open, withTransition: false, anchorElement: fieldRef.current, position: popoverPosition, preventFlip: preventFlip, popperClassName: cn__default['default'](styles__default['default'].popoverInner, popperClassName), update: updatePopover, zIndex: zIndexPopover }, needRenderOptionsList && (React__default['default'].createElement("div", tslib_es6.__assign({}, menuProps, { className: cn__default['default'](optionsListClassName, styles__default['default'].optionsList) }),
|
|
244
|
-
React__default['default'].createElement(OptionsList, tslib_es6.__assign({}, optionsListProps, { flatOptions: flatOptions, highlightedIndex: highlightedIndex, open: open, size: size, options: options, Optgroup: Optgroup, Option: Option, selectedItems: selectedItems, setSelectedItems: setSelectedItems, toggleMenu: toggleMenu, getOptionProps: getOptionProps, visibleOptions: visibleOptions, onScroll: onScroll, dataTestId: getDataTestId(dataTestId, 'options-list') }))))))));
|
|
245
|
-
});
|
|
246
|
-
|
|
247
|
-
exports.BaseSelect = BaseSelect;
|
|
19
|
+
exports.BaseSelect = components_baseSelect_Component.BaseSelect;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export * from "
|
|
1
|
+
export * from "../../Component-9bc41b6c";
|
|
@@ -11,7 +11,7 @@ require('resize-observer');
|
|
|
11
11
|
require('@alfalab/core-components-popover/dist/cssm');
|
|
12
12
|
require('downshift');
|
|
13
13
|
require('../native-select/Component.js');
|
|
14
|
-
var components_baseSelect_Component = require('
|
|
14
|
+
var components_baseSelect_Component = require('../../Component-9bc41b6c.js');
|
|
15
15
|
require('./index.module.css');
|
|
16
16
|
|
|
17
17
|
|
|
@@ -27,11 +27,26 @@ require('resize-observer');
|
|
|
27
27
|
require('@alfalab/core-components-popover/dist/cssm');
|
|
28
28
|
require('downshift');
|
|
29
29
|
require('./native-select/Component.js');
|
|
30
|
-
var components_baseSelect_Component = require('
|
|
30
|
+
var components_baseSelect_Component = require('../Component-9bc41b6c.js');
|
|
31
31
|
require('./base-select/index.module.css');
|
|
32
|
+
require('../Component.js');
|
|
33
|
+
require('@alfalab/core-components-bottom-sheet/dist/cssm');
|
|
34
|
+
require('@alfalab/core-components-button/dist/cssm');
|
|
35
|
+
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
36
|
+
require('./select-mobile/options-list/index.module.css');
|
|
37
|
+
require('./select-mobile/options-list/Component.js');
|
|
38
|
+
require('./select-mobile/checkmark/index.module.css');
|
|
39
|
+
require('./select-mobile/checkmark/Component.js');
|
|
40
|
+
var presets_useSelectWithApply_hook = require('../Component-d45c0e41.js');
|
|
41
|
+
require('../presets/useSelectWithApply/options-list-with-apply/index.module.css');
|
|
42
|
+
require('./select-mobile/index.module.css');
|
|
32
43
|
require('react-virtual');
|
|
33
44
|
require('./virtual-options-list/index.module.css');
|
|
34
45
|
var components_virtualOptionsList_Component = require('./virtual-options-list/Component.js');
|
|
46
|
+
require('@alfalab/core-components-skeleton/dist/cssm');
|
|
47
|
+
require('../presets/useSelectWithLoading/index.module.css');
|
|
48
|
+
require('../intersection-observer-8c55e13a.js');
|
|
49
|
+
require('../presets/useLazyLoading/index.module.css');
|
|
35
50
|
|
|
36
51
|
|
|
37
52
|
|
|
@@ -41,4 +56,5 @@ exports.Optgroup = components_optgroup_Component.Optgroup;
|
|
|
41
56
|
exports.OptionsList = components_optionsList_Component.OptionsList;
|
|
42
57
|
exports.Option = components_option_Component.Option;
|
|
43
58
|
exports.BaseSelect = components_baseSelect_Component.BaseSelect;
|
|
59
|
+
exports.SelectMobile = presets_useSelectWithApply_hook.SelectMobile;
|
|
44
60
|
exports.VirtualOptionsList = components_virtualOptionsList_Component.VirtualOptionsList;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import { OptgroupProps } from "../../typings";
|
|
3
|
-
declare const Optgroup: ({ children, label, size }: OptgroupProps) => JSX.Element;
|
|
3
|
+
declare const Optgroup: ({ children, className, label, size }: OptgroupProps) => JSX.Element;
|
|
4
4
|
export { Optgroup };
|
|
@@ -13,9 +13,9 @@ var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
|
13
13
|
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
14
14
|
|
|
15
15
|
var Optgroup = function (_a) {
|
|
16
|
-
var children = _a.children, label = _a.label, _b = _a.size, size = _b === void 0 ? 's' : _b;
|
|
16
|
+
var children = _a.children, className = _a.className, label = _a.label, _b = _a.size, size = _b === void 0 ? 's' : _b;
|
|
17
17
|
return (React__default['default'].createElement(React__default['default'].Fragment, null,
|
|
18
|
-
React__default['default'].createElement("div", { className: cn__default['default'](styles__default['default'].optgroup, styles__default['default'][size]) },
|
|
18
|
+
React__default['default'].createElement("div", { className: cn__default['default'](styles__default['default'].optgroup, className, styles__default['default'][size]) },
|
|
19
19
|
React__default['default'].createElement("span", { className: styles__default['default'].label }, label)),
|
|
20
20
|
children));
|
|
21
21
|
};
|
|
@@ -24,11 +24,11 @@ var createCounter = function () {
|
|
|
24
24
|
return function () { return count++; };
|
|
25
25
|
};
|
|
26
26
|
var OptionsList = React.forwardRef(function (_a, ref) {
|
|
27
|
-
var _b = _a.size, size = _b === void 0 ? 's' : _b, className = _a.className, Option = _a.Option, getOptionProps = _a.getOptionProps, _c = _a.options, options = _c === void 0 ? [] : _c, _d = _a.Optgroup, Optgroup = _d === void 0 ? components_optgroup_Component.Optgroup : _d, dataTestId = _a.dataTestId, emptyPlaceholder = _a.emptyPlaceholder, _e = _a.visibleOptions, visibleOptions = _e === void 0 ? 5 : _e, onScroll = _a.onScroll, open = _a.open, header = _a.header, footer = _a.footer;
|
|
27
|
+
var _b = _a.size, size = _b === void 0 ? 's' : _b, className = _a.className, optionGroupClassName = _a.optionGroupClassName, Option = _a.Option, getOptionProps = _a.getOptionProps, _c = _a.options, options = _c === void 0 ? [] : _c, _d = _a.Optgroup, Optgroup = _d === void 0 ? components_optgroup_Component.Optgroup : _d, dataTestId = _a.dataTestId, emptyPlaceholder = _a.emptyPlaceholder, _e = _a.visibleOptions, visibleOptions = _e === void 0 ? 5 : _e, onScroll = _a.onScroll, open = _a.open, header = _a.header, footer = _a.footer;
|
|
28
28
|
var renderOption = React.useCallback(function (option, index) { return (React__default['default'].createElement(Option, tslib_es6.__assign({ key: option.key }, getOptionProps(option, index)))); }, [getOptionProps]);
|
|
29
29
|
var listRef = React.useRef(null);
|
|
30
30
|
var counter = createCounter();
|
|
31
|
-
var renderGroup = React.useCallback(function (group) { return (React__default['default'].createElement(Optgroup, { label: group.label, key: group.label, size: size }, group.options.map(function (option) { return renderOption(option, counter()); }))); }, [counter, renderOption, size]);
|
|
31
|
+
var renderGroup = React.useCallback(function (group) { return (React__default['default'].createElement(Optgroup, { className: optionGroupClassName, label: group.label, key: group.label, size: size }, group.options.map(function (option) { return renderOption(option, counter()); }))); }, [optionGroupClassName, counter, renderOption, size]);
|
|
32
32
|
utils.useVisibleOptions({
|
|
33
33
|
visibleOptions: visibleOptions,
|
|
34
34
|
listRef: listRef,
|
|
File without changes
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
require('../../tslib.es6-f8106a15.js');
|
|
6
|
+
require('react');
|
|
7
|
+
require('classnames');
|
|
8
|
+
require('@alfalab/hooks');
|
|
9
|
+
require('@alfalab/core-components-form-control/dist/cssm');
|
|
10
|
+
require('../../utils.js');
|
|
11
|
+
require('../field/index.module.css');
|
|
12
|
+
require('../field/Component.js');
|
|
13
|
+
require('@alfalab/icons-glyph/ChevronDownMIcon');
|
|
14
|
+
require('../arrow/index.module.css');
|
|
15
|
+
require('../arrow/Component.js');
|
|
16
|
+
require('react-merge-refs');
|
|
17
|
+
require('../optgroup/index.module.css');
|
|
18
|
+
require('../optgroup/Component.js');
|
|
19
|
+
require('../options-list/index.module.css');
|
|
20
|
+
require('../options-list/Component.js');
|
|
21
|
+
require('@alfalab/core-components-checkbox/dist/cssm');
|
|
22
|
+
require('../checkmark/index.module.css');
|
|
23
|
+
require('../checkmark/Component.js');
|
|
24
|
+
require('../option/index.module.css');
|
|
25
|
+
require('../option/Component.js');
|
|
26
|
+
require('resize-observer');
|
|
27
|
+
require('@alfalab/core-components-popover/dist/cssm');
|
|
28
|
+
require('downshift');
|
|
29
|
+
require('../native-select/Component.js');
|
|
30
|
+
require('../../Component-9bc41b6c.js');
|
|
31
|
+
require('../base-select/index.module.css');
|
|
32
|
+
require('../../Component.js');
|
|
33
|
+
require('@alfalab/core-components-bottom-sheet/dist/cssm');
|
|
34
|
+
require('@alfalab/core-components-button/dist/cssm');
|
|
35
|
+
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
36
|
+
require('./options-list/index.module.css');
|
|
37
|
+
require('./options-list/Component.js');
|
|
38
|
+
require('./checkmark/index.module.css');
|
|
39
|
+
require('./checkmark/Component.js');
|
|
40
|
+
var presets_useSelectWithApply_hook = require('../../Component-d45c0e41.js');
|
|
41
|
+
require('../../presets/useSelectWithApply/options-list-with-apply/index.module.css');
|
|
42
|
+
require('./index.module.css');
|
|
43
|
+
require('react-virtual');
|
|
44
|
+
require('../virtual-options-list/index.module.css');
|
|
45
|
+
require('@alfalab/core-components-skeleton/dist/cssm');
|
|
46
|
+
require('../../presets/useSelectWithLoading/index.module.css');
|
|
47
|
+
require('../../intersection-observer-8c55e13a.js');
|
|
48
|
+
require('../../presets/useLazyLoading/index.module.css');
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
exports.SelectMobile = presets_useSelectWithApply_hook.SelectMobile;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
var React = require('react');
|
|
6
|
+
var cn = require('classnames');
|
|
7
|
+
var styles = require('./index.module.css');
|
|
8
|
+
|
|
9
|
+
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
10
|
+
|
|
11
|
+
var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
|
|
12
|
+
var cn__default = /*#__PURE__*/_interopDefaultLegacy(cn);
|
|
13
|
+
var styles__default = /*#__PURE__*/_interopDefaultLegacy(styles);
|
|
14
|
+
|
|
15
|
+
var Checkmark = function (_a) {
|
|
16
|
+
var _b;
|
|
17
|
+
var selected = _a.selected, className = _a.className;
|
|
18
|
+
return (React__default['default'].createElement("span", { className: cn__default['default'](styles__default['default'].checkmark, className, (_b = {},
|
|
19
|
+
_b[styles__default['default'].selected] = selected,
|
|
20
|
+
_b)) }));
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
exports.Checkmark = Checkmark;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./Component";
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
require('react');
|
|
6
|
+
require('classnames');
|
|
7
|
+
require('./index.module.css');
|
|
8
|
+
var components_selectMobile_checkmark_Component = require('./Component.js');
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
exports.Checkmark = components_selectMobile_checkmark_Component.Checkmark;
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
|
|
3
|
+
/* Hard */
|
|
4
|
+
|
|
5
|
+
/* Up */
|
|
6
|
+
|
|
7
|
+
/* Hard up */
|
|
8
|
+
}
|
|
9
|
+
:root {
|
|
10
|
+
|
|
11
|
+
/* options list */
|
|
12
|
+
|
|
13
|
+
/* option */
|
|
14
|
+
|
|
15
|
+
/* checkmark */
|
|
16
|
+
--select-mobile-checkmark-background: url('https://alfabank.gcdn.co/icons/glyph_checkmark_m.svg');
|
|
17
|
+
|
|
18
|
+
/* optgroup */
|
|
19
|
+
}
|
|
20
|
+
.checkmark {
|
|
21
|
+
flex-shrink: 0;
|
|
22
|
+
display: flex;
|
|
23
|
+
align-items: center;
|
|
24
|
+
justify-content: center;
|
|
25
|
+
background: var(--select-mobile-checkmark-background);
|
|
26
|
+
background-size: cover;
|
|
27
|
+
width: 24px;
|
|
28
|
+
height: 24px;
|
|
29
|
+
opacity: 0
|
|
30
|
+
}
|
|
31
|
+
.checkmark:first-child {
|
|
32
|
+
display: none;
|
|
33
|
+
}
|
|
34
|
+
.checkmark.selected {
|
|
35
|
+
opacity: 1;
|
|
36
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "../../Component-d45c0e41";
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, '__esModule', { value: true });
|
|
4
|
+
|
|
5
|
+
require('../../tslib.es6-f8106a15.js');
|
|
6
|
+
require('react');
|
|
7
|
+
require('classnames');
|
|
8
|
+
require('@alfalab/hooks');
|
|
9
|
+
require('@alfalab/core-components-form-control/dist/cssm');
|
|
10
|
+
require('../../utils.js');
|
|
11
|
+
require('../field/index.module.css');
|
|
12
|
+
require('../field/Component.js');
|
|
13
|
+
require('@alfalab/icons-glyph/ChevronDownMIcon');
|
|
14
|
+
require('../arrow/index.module.css');
|
|
15
|
+
require('../arrow/Component.js');
|
|
16
|
+
require('react-merge-refs');
|
|
17
|
+
require('../optgroup/index.module.css');
|
|
18
|
+
require('../optgroup/Component.js');
|
|
19
|
+
require('../options-list/index.module.css');
|
|
20
|
+
require('../options-list/Component.js');
|
|
21
|
+
require('@alfalab/core-components-checkbox/dist/cssm');
|
|
22
|
+
require('../checkmark/index.module.css');
|
|
23
|
+
require('../checkmark/Component.js');
|
|
24
|
+
require('../option/index.module.css');
|
|
25
|
+
require('../option/Component.js');
|
|
26
|
+
require('resize-observer');
|
|
27
|
+
require('@alfalab/core-components-popover/dist/cssm');
|
|
28
|
+
require('downshift');
|
|
29
|
+
require('../native-select/Component.js');
|
|
30
|
+
require('../../Component-9bc41b6c.js');
|
|
31
|
+
require('../base-select/index.module.css');
|
|
32
|
+
require('../../Component.js');
|
|
33
|
+
require('@alfalab/core-components-bottom-sheet/dist/cssm');
|
|
34
|
+
require('@alfalab/core-components-button/dist/cssm');
|
|
35
|
+
require('@alfalab/core-components-base-modal/dist/cssm');
|
|
36
|
+
require('./options-list/index.module.css');
|
|
37
|
+
require('./options-list/Component.js');
|
|
38
|
+
require('./checkmark/index.module.css');
|
|
39
|
+
require('./checkmark/Component.js');
|
|
40
|
+
var presets_useSelectWithApply_hook = require('../../Component-d45c0e41.js');
|
|
41
|
+
require('../../presets/useSelectWithApply/options-list-with-apply/index.module.css');
|
|
42
|
+
require('./index.module.css');
|
|
43
|
+
require('react-virtual');
|
|
44
|
+
require('../virtual-options-list/index.module.css');
|
|
45
|
+
require('@alfalab/core-components-skeleton/dist/cssm');
|
|
46
|
+
require('../../presets/useSelectWithLoading/index.module.css');
|
|
47
|
+
require('../../intersection-observer-8c55e13a.js');
|
|
48
|
+
require('../../presets/useLazyLoading/index.module.css');
|
|
49
|
+
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
exports.SelectMobile = presets_useSelectWithApply_hook.SelectMobile;
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
:root {
|
|
2
|
+
|
|
3
|
+
/* Hard */
|
|
4
|
+
|
|
5
|
+
/* Up */
|
|
6
|
+
|
|
7
|
+
/* Hard up */
|
|
8
|
+
}
|
|
9
|
+
:root {
|
|
10
|
+
--gap-2xs: 4px;
|
|
11
|
+
--gap-xs: 8px;
|
|
12
|
+
--gap-m: 16px;
|
|
13
|
+
--gap-l: 20px;
|
|
14
|
+
}
|
|
15
|
+
:root {
|
|
16
|
+
|
|
17
|
+
/* options list */
|
|
18
|
+
--select-options-list-offset: 0;
|
|
19
|
+
|
|
20
|
+
/* option */
|
|
21
|
+
|
|
22
|
+
/* checkmark */
|
|
23
|
+
|
|
24
|
+
/* optgroup */
|
|
25
|
+
}
|
|
26
|
+
.component {
|
|
27
|
+
width: max-content;
|
|
28
|
+
position: relative;
|
|
29
|
+
outline: 0;
|
|
30
|
+
}
|
|
31
|
+
.popoverInner {
|
|
32
|
+
padding-top: var(--select-options-list-offset);
|
|
33
|
+
padding-bottom: var(--select-options-list-offset);
|
|
34
|
+
box-shadow: none;
|
|
35
|
+
border: none;
|
|
36
|
+
background: transparent;
|
|
37
|
+
border-radius: 0;
|
|
38
|
+
position: relative;
|
|
39
|
+
}
|
|
40
|
+
.sheet {
|
|
41
|
+
overflow: hidden;
|
|
42
|
+
}
|
|
43
|
+
.sheetContent {
|
|
44
|
+
padding: 0;
|
|
45
|
+
}
|
|
46
|
+
.sheetContainer {
|
|
47
|
+
padding: 0;
|
|
48
|
+
}
|
|
49
|
+
.block {
|
|
50
|
+
width: 100%;
|
|
51
|
+
}
|
|
52
|
+
/* width: max-content; fix for IE */
|
|
53
|
+
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
|
|
54
|
+
.component {
|
|
55
|
+
float: left;
|
|
56
|
+
clear: left;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
.option {
|
|
60
|
+
padding: var(--gap-2xs) var(--gap-l) var(--gap-2xs) var(--gap-m)
|
|
61
|
+
}
|
|
62
|
+
.option:before {
|
|
63
|
+
display: none;
|
|
64
|
+
}
|
|
65
|
+
.optionGroup {
|
|
66
|
+
padding: var(--gap-m) var(--gap-m) var(--gap-xs);
|
|
67
|
+
}
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { OptionsListProps } from "../../../typings";
|
|
3
|
+
declare const OptionsList: ({ size, className, optionGroupClassName, Option, getOptionProps, options, Optgroup, dataTestId, emptyPlaceholder, showFooter, onApply, onClear, }: OptionsListProps) => JSX.Element | null;
|
|
4
|
+
export { OptionsList };
|