@alfalab/core-components-select 17.21.5 → 17.23.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 +5 -5
- package/components/base-checkmark/Component.js +1 -1
- package/components/base-checkmark/index.css +6 -6
- package/components/base-option/Component.js +1 -1
- package/components/base-option/index.css +17 -17
- package/components/base-select/Component.js +77 -32
- package/components/base-select/index.css +12 -12
- 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/clear-button/Component.js +1 -1
- package/components/clear-button/index.css +5 -5
- package/components/field/Component.d.ts +1 -1
- package/components/field/Component.js +3 -3
- package/components/field/index.css +14 -14
- 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 +5 -5
- package/components/option/desktop/Component.js +1 -1
- package/components/option/desktop/index.css +21 -21
- package/components/option/mobile/Component.js +1 -1
- package/components/option/mobile/index.css +18 -18
- 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 +4 -4
- package/components/virtual-options-list/index.css +14 -14
- package/consts.d.ts +2 -1
- package/consts.js +2 -0
- package/cssm/components/base-select/Component.js +61 -21
- package/cssm/components/field/Component.d.ts +1 -1
- package/cssm/components/field/Component.js +2 -2
- package/cssm/components/virtual-options-list/Component.js +3 -3
- package/cssm/consts.d.ts +2 -1
- package/cssm/consts.js +2 -0
- package/cssm/typings.d.ts +9 -0
- package/cssm/utils.d.ts +2 -1
- package/cssm/utils.js +3 -2
- package/esm/components/arrow/Component.js +1 -1
- package/esm/components/arrow/index.css +5 -5
- package/esm/components/base-checkmark/Component.js +1 -1
- package/esm/components/base-checkmark/index.css +6 -6
- package/esm/components/base-option/Component.js +1 -1
- package/esm/components/base-option/index.css +17 -17
- package/esm/components/base-select/Component.js +67 -22
- package/esm/components/base-select/index.css +12 -12
- 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/clear-button/Component.js +1 -1
- package/esm/components/clear-button/index.css +5 -5
- package/esm/components/field/Component.d.ts +1 -1
- package/esm/components/field/Component.js +3 -3
- package/esm/components/field/index.css +14 -14
- 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 +5 -5
- package/esm/components/option/desktop/Component.js +1 -1
- package/esm/components/option/desktop/index.css +21 -21
- package/esm/components/option/mobile/Component.js +1 -1
- package/esm/components/option/mobile/index.css +18 -18
- 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 +4 -4
- package/esm/components/virtual-options-list/index.css +14 -14
- package/esm/consts.d.ts +2 -1
- package/esm/consts.js +2 -1
- package/esm/mobile/Component.mobile.js +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 +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
- package/esm/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/esm/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
- 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 +1 -1
- package/esm/typings.d.ts +9 -0
- package/esm/utils.d.ts +2 -1
- package/esm/utils.js +3 -2
- package/mobile/Component.mobile.js +1 -1
- package/modern/components/arrow/Component.js +1 -1
- package/modern/components/arrow/index.css +5 -5
- package/modern/components/base-checkmark/Component.js +1 -1
- package/modern/components/base-checkmark/index.css +6 -6
- package/modern/components/base-option/Component.js +1 -1
- package/modern/components/base-option/index.css +17 -17
- package/modern/components/base-select/Component.js +63 -12
- package/modern/components/base-select/index.css +12 -12
- 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/clear-button/Component.js +1 -1
- package/modern/components/clear-button/index.css +5 -5
- package/modern/components/field/Component.d.ts +1 -1
- package/modern/components/field/Component.js +3 -3
- package/modern/components/field/index.css +14 -14
- 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 +5 -5
- package/modern/components/option/desktop/Component.js +1 -1
- package/modern/components/option/desktop/index.css +21 -21
- package/modern/components/option/mobile/Component.js +1 -1
- package/modern/components/option/mobile/index.css +18 -18
- 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 +4 -4
- package/modern/components/virtual-options-list/index.css +14 -14
- package/modern/consts.d.ts +2 -1
- package/modern/consts.js +2 -1
- package/modern/mobile/Component.mobile.js +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 +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
- package/modern/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/modern/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
- 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 +1 -1
- package/modern/typings.d.ts +9 -0
- package/modern/utils.d.ts +2 -1
- package/modern/utils.js +3 -2
- package/moderncssm/components/base-select/Component.js +57 -11
- package/moderncssm/components/field/Component.d.ts +1 -1
- package/moderncssm/components/field/Component.js +2 -2
- package/moderncssm/components/virtual-options-list/Component.js +3 -3
- package/moderncssm/consts.d.ts +2 -1
- package/moderncssm/consts.js +2 -1
- package/moderncssm/typings.d.ts +9 -0
- package/moderncssm/utils.d.ts +2 -1
- package/moderncssm/utils.js +3 -2
- package/package.json +5 -5
- 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 +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/footer/index.css +4 -4
- package/presets/useSelectWithApply/options-list-with-apply/header/Component.js +1 -1
- package/presets/useSelectWithApply/options-list-with-apply/header/index.css +4 -4
- 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 +1 -1
- package/src/components/base-select/Component.tsx +156 -35
- package/src/components/field/Component.tsx +2 -1
- package/src/components/virtual-options-list/Component.tsx +3 -2
- package/src/consts.ts +2 -0
- package/src/typings.ts +11 -0
- package/src/utils.ts +4 -1
- package/typings.d.ts +9 -0
- package/utils.d.ts +2 -1
- package/utils.js +3 -2
- package/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
- package/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -19
- package/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
- package/components/base-select/components/list-desktop/list-popover-desktop.js +0 -12
- package/components/base-select/components/list-desktop/types/types.d.ts +0 -3
- package/components/base-select/components/list-desktop/types/types.js +0 -2
- package/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
- package/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -23
- package/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
- package/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -22
- package/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
- package/components/base-select/components/list-mobile/helpers/index.js +0 -11
- package/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
- package/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -31
- package/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
- package/components/base-select/components/list-mobile/list-mobile.js +0 -26
- package/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
- package/components/base-select/components/list-mobile/list-modal-mobile.js +0 -45
- package/components/base-select/components/list-mobile/types/types.d.ts +0 -4
- package/components/base-select/components/list-mobile/types/types.js +0 -2
- package/cssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
- package/cssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -19
- package/cssm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -9
- package/cssm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -24
- package/cssm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
- package/cssm/components/base-select/components/list-desktop/types/types.js +0 -2
- package/cssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
- package/cssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -23
- package/cssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
- package/cssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -22
- package/cssm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
- package/cssm/components/base-select/components/list-mobile/helpers/index.js +0 -11
- package/cssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
- package/cssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -32
- package/cssm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
- package/cssm/components/base-select/components/list-mobile/list-mobile.js +0 -26
- package/cssm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
- package/cssm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -46
- package/cssm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
- package/cssm/components/base-select/components/list-mobile/types/types.js +0 -2
- package/esm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
- package/esm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
- package/esm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
- package/esm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -4
- package/esm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
- package/esm/components/base-select/components/list-desktop/types/types.js +0 -1
- package/esm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
- package/esm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
- package/esm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
- package/esm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
- package/esm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
- package/esm/components/base-select/components/list-mobile/helpers/index.js +0 -2
- package/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
- package/esm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -23
- package/esm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
- package/esm/components/base-select/components/list-mobile/list-mobile.js +0 -18
- package/esm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
- package/esm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
- package/esm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
- package/esm/components/base-select/components/list-mobile/types/types.js +0 -1
- package/esm/list-popover-desktop-29a8ef3e.d.ts +0 -9
- package/esm/list-popover-desktop-29a8ef3e.js +0 -16
- package/esm/mobile.module-b5127fe2.js +0 -4
- package/list-popover-desktop-1eb72557.d.ts +0 -9
- package/list-popover-desktop-1eb72557.js +0 -24
- package/mobile.module-489259bb.js +0 -6
- package/modern/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
- package/modern/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
- package/modern/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -0
- package/modern/components/base-select/components/list-desktop/list-popover-desktop.js +0 -3
- package/modern/components/base-select/components/list-desktop/types/types.d.ts +0 -3
- package/modern/components/base-select/components/list-desktop/types/types.js +0 -1
- package/modern/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
- package/modern/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
- package/modern/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
- package/modern/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
- package/modern/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
- package/modern/components/base-select/components/list-mobile/helpers/index.js +0 -2
- package/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
- package/modern/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -27
- package/modern/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
- package/modern/components/base-select/components/list-mobile/list-mobile.js +0 -17
- package/modern/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
- package/modern/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
- package/modern/components/base-select/components/list-mobile/types/types.d.ts +0 -4
- package/modern/components/base-select/components/list-mobile/types/types.js +0 -1
- package/modern/list-popover-desktop-7a9f6f97.d.ts +0 -9
- package/modern/list-popover-desktop-7a9f6f97.js +0 -15
- package/modern/mobile.module-7fdca573.js +0 -4
- package/moderncssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.d.ts +0 -12
- package/moderncssm/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.js +0 -15
- package/moderncssm/components/base-select/components/list-desktop/list-popover-desktop.d.ts +0 -9
- package/moderncssm/components/base-select/components/list-desktop/list-popover-desktop.js +0 -13
- package/moderncssm/components/base-select/components/list-desktop/types/types.d.ts +0 -3
- package/moderncssm/components/base-select/components/list-desktop/types/types.js +0 -1
- package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.d.ts +0 -18
- package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.js +0 -19
- package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.d.ts +0 -31
- package/moderncssm/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.js +0 -18
- package/moderncssm/components/base-select/components/list-mobile/helpers/index.d.ts +0 -2
- package/moderncssm/components/base-select/components/list-mobile/helpers/index.js +0 -2
- package/moderncssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.d.ts +0 -15
- package/moderncssm/components/base-select/components/list-mobile/list-bottom-sheet-mobile.js +0 -27
- package/moderncssm/components/base-select/components/list-mobile/list-mobile.d.ts +0 -16
- package/moderncssm/components/base-select/components/list-mobile/list-mobile.js +0 -17
- package/moderncssm/components/base-select/components/list-mobile/list-modal-mobile.d.ts +0 -15
- package/moderncssm/components/base-select/components/list-mobile/list-modal-mobile.js +0 -35
- package/moderncssm/components/base-select/components/list-mobile/types/types.d.ts +0 -4
- package/moderncssm/components/base-select/components/list-mobile/types/types.js +0 -1
- package/src/components/base-select/components/list-desktop/helpers/get-list-popover-desktop-props.tsx +0 -24
- package/src/components/base-select/components/list-desktop/list-popover-desktop.tsx +0 -47
- package/src/components/base-select/components/list-desktop/types/types.ts +0 -3
- package/src/components/base-select/components/list-mobile/helpers/get-list-bottom-sheet-mobile-props.tsx +0 -32
- package/src/components/base-select/components/list-mobile/helpers/get-list-modal-mobile-props.tsx +0 -30
- package/src/components/base-select/components/list-mobile/helpers/index.ts +0 -2
- package/src/components/base-select/components/list-mobile/list-bottom-sheet-mobile.tsx +0 -88
- package/src/components/base-select/components/list-mobile/list-mobile.tsx +0 -39
- package/src/components/base-select/components/list-mobile/list-modal-mobile.tsx +0 -98
- package/src/components/base-select/components/list-mobile/types/types.ts +0 -4
- /package/esm/{hook-43e5c3e8.d.ts → hook-c407521c.d.ts} +0 -0
- /package/esm/{hook-43e5c3e8.js → hook-c407521c.js} +0 -0
- /package/{hook-71fac561.d.ts → hook-f40ac6c9.d.ts} +0 -0
- /package/{hook-71fac561.js → hook-f40ac6c9.js} +0 -0
- /package/modern/{hook-75b8be77.d.ts → hook-2f97598a.d.ts} +0 -0
- /package/modern/{hook-75b8be77.js → hook-2f97598a.js} +0 -0
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import React, { FC, ReactNode, RefObject } from 'react';
|
|
2
|
-
|
|
3
|
-
import { OptionShape } from '@alfalab/core-components-select/typings';
|
|
4
|
-
import { getDataTestId } from '@alfalab/core-components-shared';
|
|
5
|
-
|
|
6
|
-
import { ListBottomSheetMobileRestProps } from './types/types';
|
|
7
|
-
|
|
8
|
-
import mobileStyles from '../../mobile.module.css';
|
|
9
|
-
|
|
10
|
-
type ListMobileProps = {
|
|
11
|
-
open: boolean;
|
|
12
|
-
menuRef: RefObject<HTMLDivElement>;
|
|
13
|
-
scrollableContainerRef: RefObject<HTMLDivElement>;
|
|
14
|
-
flatOptions: OptionShape[];
|
|
15
|
-
closeMenu: () => void;
|
|
16
|
-
handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
|
|
17
|
-
renderSearch: () => ReactNode;
|
|
18
|
-
renderOptionsList: () => ReactNode;
|
|
19
|
-
} & ListBottomSheetMobileRestProps;
|
|
20
|
-
|
|
21
|
-
export const ListBottomSheetMobile: FC<ListMobileProps> = (props) => {
|
|
22
|
-
const {
|
|
23
|
-
BottomSheet,
|
|
24
|
-
dataTestId,
|
|
25
|
-
open,
|
|
26
|
-
label,
|
|
27
|
-
placeholder,
|
|
28
|
-
footer,
|
|
29
|
-
swipeable,
|
|
30
|
-
showSearch,
|
|
31
|
-
bottomSheetProps,
|
|
32
|
-
menuRef,
|
|
33
|
-
scrollableContainerRef,
|
|
34
|
-
onScroll,
|
|
35
|
-
flatOptions,
|
|
36
|
-
closeMenu,
|
|
37
|
-
handleEntered,
|
|
38
|
-
renderSearch,
|
|
39
|
-
renderOptionsList,
|
|
40
|
-
} = props;
|
|
41
|
-
|
|
42
|
-
if (BottomSheet) {
|
|
43
|
-
const bottomAddons = bottomSheetProps?.bottomAddons;
|
|
44
|
-
|
|
45
|
-
return (
|
|
46
|
-
<BottomSheet
|
|
47
|
-
dataTestId={getDataTestId(dataTestId, 'bottom-sheet')}
|
|
48
|
-
open={open}
|
|
49
|
-
className={mobileStyles.sheet}
|
|
50
|
-
contentClassName={mobileStyles.sheetContent}
|
|
51
|
-
containerClassName={mobileStyles.sheetContainer}
|
|
52
|
-
title={label || placeholder}
|
|
53
|
-
actionButton={footer}
|
|
54
|
-
stickyHeader={true}
|
|
55
|
-
hasCloser={true}
|
|
56
|
-
swipeable={swipeable}
|
|
57
|
-
initialHeight={showSearch ? 'full' : 'default'}
|
|
58
|
-
{...bottomSheetProps}
|
|
59
|
-
sheetContainerRef={menuRef}
|
|
60
|
-
scrollableContainerRef={scrollableContainerRef}
|
|
61
|
-
onClose={() => {
|
|
62
|
-
closeMenu();
|
|
63
|
-
bottomSheetProps?.onClose?.();
|
|
64
|
-
}}
|
|
65
|
-
transitionProps={{
|
|
66
|
-
...bottomSheetProps?.transitionProps,
|
|
67
|
-
onEntered: handleEntered,
|
|
68
|
-
}}
|
|
69
|
-
bottomAddons={
|
|
70
|
-
<React.Fragment>
|
|
71
|
-
{renderSearch()}
|
|
72
|
-
{typeof bottomAddons === 'function'
|
|
73
|
-
? bottomAddons(flatOptions)
|
|
74
|
-
: bottomAddons}
|
|
75
|
-
</React.Fragment>
|
|
76
|
-
}
|
|
77
|
-
containerProps={{
|
|
78
|
-
...bottomSheetProps?.containerProps,
|
|
79
|
-
onScroll,
|
|
80
|
-
}}
|
|
81
|
-
>
|
|
82
|
-
{renderOptionsList()}
|
|
83
|
-
</BottomSheet>
|
|
84
|
-
);
|
|
85
|
-
}
|
|
86
|
-
|
|
87
|
-
return null;
|
|
88
|
-
};
|
|
@@ -1,39 +0,0 @@
|
|
|
1
|
-
import React, { FC, ReactNode, RefObject } from 'react';
|
|
2
|
-
|
|
3
|
-
import { OptionShape } from '@alfalab/core-components-select/typings';
|
|
4
|
-
|
|
5
|
-
import { ListBottomSheetMobileRestProps, ListModalMobileRestProps } from './types/types';
|
|
6
|
-
import { ListBottomSheetMobile } from './list-bottom-sheet-mobile';
|
|
7
|
-
import { ListModalMobile } from './list-modal-mobile';
|
|
8
|
-
|
|
9
|
-
type ListMobileProps = {
|
|
10
|
-
baseProps: ListBottomSheetMobileRestProps | ListModalMobileRestProps;
|
|
11
|
-
open: boolean;
|
|
12
|
-
menuRef: RefObject<HTMLDivElement>;
|
|
13
|
-
scrollableContainerRef: RefObject<HTMLDivElement>;
|
|
14
|
-
flatOptions: OptionShape[];
|
|
15
|
-
closeMenu: () => void;
|
|
16
|
-
handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
|
|
17
|
-
renderSearch: () => ReactNode;
|
|
18
|
-
renderOptionsList: () => ReactNode;
|
|
19
|
-
};
|
|
20
|
-
|
|
21
|
-
export const ListMobile: FC<ListMobileProps> = (props) => {
|
|
22
|
-
const { baseProps, ...restProps } = props;
|
|
23
|
-
const { isBottomSheet, nativeSelect } = baseProps;
|
|
24
|
-
|
|
25
|
-
if (isBottomSheet && !nativeSelect) {
|
|
26
|
-
return (
|
|
27
|
-
<ListBottomSheetMobile
|
|
28
|
-
{...(baseProps as ListBottomSheetMobileRestProps)}
|
|
29
|
-
{...restProps}
|
|
30
|
-
/>
|
|
31
|
-
);
|
|
32
|
-
}
|
|
33
|
-
|
|
34
|
-
if (!isBottomSheet && !nativeSelect) {
|
|
35
|
-
return <ListModalMobile {...(baseProps as ListModalMobileRestProps)} {...restProps} />;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
return null;
|
|
39
|
-
};
|
|
@@ -1,98 +0,0 @@
|
|
|
1
|
-
import React, { FC, ReactNode, RefObject } from 'react';
|
|
2
|
-
import mergeRefs from 'react-merge-refs';
|
|
3
|
-
import cn from 'classnames';
|
|
4
|
-
|
|
5
|
-
import { OptionShape } from '@alfalab/core-components-select/typings';
|
|
6
|
-
import { getDataTestId } from '@alfalab/core-components-shared';
|
|
7
|
-
|
|
8
|
-
import { ListModalMobileRestProps } from './types/types';
|
|
9
|
-
|
|
10
|
-
import mobileStyles from '../../mobile.module.css';
|
|
11
|
-
|
|
12
|
-
type ListModalMobileProps = {
|
|
13
|
-
open: boolean;
|
|
14
|
-
menuRef: RefObject<HTMLDivElement>;
|
|
15
|
-
scrollableContainerRef: RefObject<HTMLDivElement>;
|
|
16
|
-
flatOptions: OptionShape[];
|
|
17
|
-
closeMenu: () => void;
|
|
18
|
-
handleEntered: (node: HTMLElement, isAppearing: boolean) => void;
|
|
19
|
-
renderSearch: () => ReactNode;
|
|
20
|
-
renderOptionsList: () => ReactNode;
|
|
21
|
-
} & ListModalMobileRestProps;
|
|
22
|
-
|
|
23
|
-
export const ListModalMobile: FC<ListModalMobileProps> = (props) => {
|
|
24
|
-
const {
|
|
25
|
-
ModalMobile,
|
|
26
|
-
dataTestId,
|
|
27
|
-
open,
|
|
28
|
-
modalProps,
|
|
29
|
-
modalHeaderProps,
|
|
30
|
-
modalFooterProps,
|
|
31
|
-
menuRef,
|
|
32
|
-
scrollableContainerRef,
|
|
33
|
-
label,
|
|
34
|
-
placeholder,
|
|
35
|
-
onScroll,
|
|
36
|
-
flatOptions,
|
|
37
|
-
closeMenu,
|
|
38
|
-
handleEntered,
|
|
39
|
-
renderSearch,
|
|
40
|
-
renderOptionsList,
|
|
41
|
-
} = props;
|
|
42
|
-
|
|
43
|
-
if (ModalMobile) {
|
|
44
|
-
const bottomAddons = modalHeaderProps?.bottomAddons;
|
|
45
|
-
|
|
46
|
-
return (
|
|
47
|
-
<ModalMobile
|
|
48
|
-
dataTestId={getDataTestId(dataTestId, 'modal')}
|
|
49
|
-
open={open}
|
|
50
|
-
hasCloser={true}
|
|
51
|
-
{...modalProps}
|
|
52
|
-
componentRef={menuRef}
|
|
53
|
-
onClose={(...args) => {
|
|
54
|
-
closeMenu();
|
|
55
|
-
modalProps?.onClose?.(...args);
|
|
56
|
-
}}
|
|
57
|
-
contentClassName={cn(mobileStyles.sheetContent, modalProps?.contentClassName)}
|
|
58
|
-
ref={mergeRefs([
|
|
59
|
-
scrollableContainerRef,
|
|
60
|
-
modalProps?.ref as React.Ref<HTMLDivElement>,
|
|
61
|
-
])}
|
|
62
|
-
wrapperProps={{
|
|
63
|
-
...modalProps?.wrapperProps,
|
|
64
|
-
onScroll,
|
|
65
|
-
}}
|
|
66
|
-
transitionProps={{
|
|
67
|
-
...modalProps?.transitionProps,
|
|
68
|
-
onEntered: handleEntered,
|
|
69
|
-
}}
|
|
70
|
-
>
|
|
71
|
-
<ModalMobile.Header
|
|
72
|
-
hasCloser={true}
|
|
73
|
-
sticky={true}
|
|
74
|
-
{...modalHeaderProps}
|
|
75
|
-
title={undefined}
|
|
76
|
-
bottomAddons={
|
|
77
|
-
<React.Fragment>
|
|
78
|
-
{renderSearch()}
|
|
79
|
-
{typeof bottomAddons === 'function'
|
|
80
|
-
? bottomAddons(flatOptions)
|
|
81
|
-
: bottomAddons}
|
|
82
|
-
</React.Fragment>
|
|
83
|
-
}
|
|
84
|
-
>
|
|
85
|
-
{modalHeaderProps?.title || label || placeholder}
|
|
86
|
-
</ModalMobile.Header>
|
|
87
|
-
|
|
88
|
-
<ModalMobile.Content flex={true} className={mobileStyles.modalContent}>
|
|
89
|
-
{renderOptionsList()}
|
|
90
|
-
</ModalMobile.Content>
|
|
91
|
-
|
|
92
|
-
{modalFooterProps?.children && <ModalMobile.Footer {...modalFooterProps} />}
|
|
93
|
-
</ModalMobile>
|
|
94
|
-
);
|
|
95
|
-
}
|
|
96
|
-
|
|
97
|
-
return null;
|
|
98
|
-
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|