@vkontakte/vkui 4.24.0 → 4.25.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/.cache/.eslintcache +1 -1
- package/.cache/.stylelintcache +1 -1
- package/.cache/.tsbuildinfo +1185 -653
- package/.cache/ts/src/components/ActionSheet/ActionSheetContext.d.ts +6 -5
- package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/.cache/ts/src/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
- package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
- package/.cache/ts/src/components/Alert/Alert.d.ts +4 -21
- package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +1 -1
- package/.cache/ts/src/components/AppRoot/AppRootContext.d.ts +1 -1
- package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +1 -1
- package/.cache/ts/src/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
- package/.cache/ts/src/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
- package/.cache/ts/src/components/Avatar/Avatar.d.ts +1 -1
- package/.cache/ts/src/components/Button/Button.d.ts +1 -1
- package/.cache/ts/src/components/CardGrid/CardGrid.d.ts +1 -1
- package/.cache/ts/src/components/CardScroll/CardScroll.d.ts +1 -1
- package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +1 -1
- package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +1 -4
- package/.cache/ts/src/components/ChipsInput/useChipsInput.d.ts +3 -3
- package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +2 -5
- package/.cache/ts/src/components/ChipsSelect/useChipsSelect.d.ts +8 -8
- package/.cache/ts/src/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/.cache/ts/src/components/ConfigProvider/ConfigProvider.d.ts +3 -1
- package/.cache/ts/src/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
- package/.cache/ts/src/components/CustomScrollView/CustomScrollView.d.ts +1 -1
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -65
- package/.cache/ts/src/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/.cache/ts/src/components/DatePicker/DatePicker.d.ts +1 -1
- package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +2 -43
- package/.cache/ts/src/components/Epic/Epic.d.ts +3 -3
- package/.cache/ts/src/components/Epic/ScrollSaver.d.ts +0 -1
- package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +1 -1
- package/.cache/ts/src/components/Gallery/Gallery.d.ts +1 -1
- package/.cache/ts/src/components/Group/Group.d.ts +1 -1
- package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
- package/.cache/ts/src/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/.cache/ts/src/components/IconButton/IconButton.d.ts +1 -1
- package/.cache/ts/src/components/Input/Input.d.ts +1 -1
- package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +3 -3
- package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +2 -1
- package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +3 -3
- package/.cache/ts/src/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
- package/.cache/ts/src/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
- package/.cache/ts/src/components/ModalRoot/ModalRootContext.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/types.d.ts +1 -1
- package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +9 -9
- package/.cache/ts/src/components/ModalRoot/withModalRootContext.d.ts +1 -1
- package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -3
- package/.cache/ts/src/components/Panel/Panel.d.ts +3 -3
- package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +1 -1
- package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/.cache/ts/src/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/.cache/ts/src/components/Popper/Popper.d.ts +2 -2
- package/.cache/ts/src/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/.cache/ts/src/components/Radio/Radio.d.ts +1 -1
- package/.cache/ts/src/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/.cache/ts/src/components/RichCell/RichCell.d.ts +1 -1
- package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +2 -43
- package/.cache/ts/src/components/Search/Search.d.ts +1 -1
- package/.cache/ts/src/components/Select/Select.d.ts +3 -3
- package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/.cache/ts/src/components/Slider/Slider.d.ts +1 -8
- package/.cache/ts/src/components/SliderSwitch/SliderSwitch.d.ts +1 -1
- package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +3 -3
- package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +1 -1
- package/.cache/ts/src/components/Tabs/Tabs.d.ts +2 -2
- package/.cache/ts/src/components/Tappable/Tappable.d.ts +1 -1
- package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +2 -37
- package/.cache/ts/src/components/Textarea/Textarea.d.ts +1 -1
- package/.cache/ts/src/components/Tooltip/TooltipContainer.d.ts +1 -1
- package/.cache/ts/src/components/UsersStack/masks.d.ts +1 -1
- package/.cache/ts/src/components/View/View.d.ts +9 -9
- package/.cache/ts/src/components/View/ViewInfinite.d.ts +11 -11
- package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +1 -1
- package/.cache/ts/src/helpers/getScheme.d.ts +8 -0
- package/.cache/ts/src/helpers/scheme.d.ts +34 -0
- package/.cache/ts/src/hoc/withAdaptivity.d.ts +3 -2
- package/.cache/ts/src/hoc/withContext.d.ts +1 -1
- package/.cache/ts/src/hoc/withInsets.d.ts +3 -1
- package/.cache/ts/src/hoc/withPlatform.d.ts +3 -1
- package/.cache/ts/src/hooks/useAdaptivity.d.ts +2 -2
- package/.cache/ts/src/hooks/useAppearance.d.ts +1 -1
- package/.cache/ts/src/hooks/useEnsuredControl.d.ts +1 -1
- package/.cache/ts/src/hooks/useEventListener.d.ts +3 -3
- package/.cache/ts/src/hooks/useExternRef.d.ts +1 -1
- package/.cache/ts/src/hooks/useFocusVisible.d.ts +1 -1
- package/.cache/ts/src/hooks/useGlobalEventListener.d.ts +2 -2
- package/.cache/ts/src/hooks/useInsets.d.ts +7 -1
- package/.cache/ts/src/hooks/usePatchChildrenRef.d.ts +1 -1
- package/.cache/ts/src/hooks/usePlatform.d.ts +1 -1
- package/.cache/ts/src/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/.cache/ts/src/index.d.ts +3 -1
- package/.cache/ts/src/lib/SSR.d.ts +1 -1
- package/.cache/ts/src/lib/accessibility.d.ts +1 -1
- package/.cache/ts/src/lib/dom.d.ts +3 -3
- package/.cache/ts/src/lib/getNavId.d.ts +1 -1
- package/.cache/ts/src/lib/jsxRuntime.d.ts +7 -3
- package/.cache/ts/src/lib/offset.d.ts +5 -5
- package/.cache/ts/src/lib/prefixClass.d.ts +1 -1
- package/.cache/ts/src/lib/select.d.ts +2 -2
- package/.cache/ts/src/lib/styles.d.ts +1 -1
- package/.cache/ts/src/lib/supportEvents.d.ts +1 -1
- package/.cache/ts/src/lib/utils.d.ts +1 -1
- package/.cache/ts/src/testing/utils.d.ts +2 -2
- package/.cache/ts/src/tokenized/tokenized.d.ts +2 -0
- package/.eslintrc.json +11 -5
- package/dist/{5c1a8c271e68390145da2b270f47c843.woff → 5c1a8c271e68390145da.woff} +0 -0
- package/dist/{7082adfe0b49e2f8da5bf38d29e318ac.woff2 → 7082adfe0b49e2f8da5b.woff2} +0 -0
- package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -2
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetContext.d.ts +6 -5
- package/dist/cjs/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +3 -3
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js +4 -2
- package/dist/cjs/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +13 -6
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.d.ts +4 -21
- package/dist/cjs/components/Alert/Alert.js +32 -18
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.d.ts +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.js +29 -16
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRootContext.d.ts +1 -1
- package/dist/cjs/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.d.ts +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.js +6 -4
- package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js +50 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js +14 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
- package/dist/cjs/components/Avatar/Avatar.d.ts +1 -1
- package/dist/cjs/components/Avatar/Avatar.js +15 -16
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js +3 -2
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +1 -1
- package/dist/cjs/components/Button/Button.js +2 -2
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Card/Card.js +2 -1
- package/dist/cjs/components/Card/Card.js.map +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.d.ts +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.js +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.d.ts +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +9 -1
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.js +1 -1
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/Cell/useDraggable.js +58 -47
- package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +2 -1
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.js +2 -1
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +1 -4
- package/dist/cjs/components/ChipsInput/ChipsInput.js +73 -64
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsInput/useChipsInput.d.ts +3 -3
- package/dist/cjs/components/ChipsInput/useChipsInput.js +2 -2
- package/dist/cjs/components/ChipsInput/useChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +2 -5
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +78 -67
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/useChipsSelect.d.ts +8 -8
- package/dist/cjs/components/ChipsSelect/useChipsSelect.js +6 -3
- package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/cjs/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/dist/cjs/components/ClickPopper/ClickPopper.js +7 -3
- package/dist/cjs/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +3 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +24 -45
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js +1 -23
- package/dist/cjs/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cjs/components/ContentCard/ContentCard.js +2 -1
- package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cjs/components/Counter/Counter.js +1 -1
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js +24 -9
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +1 -65
- package/dist/cjs/components/CustomSelect/CustomSelect.js +98 -72
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +3 -2
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.d.ts +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +40 -26
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/Div/Div.js +2 -1
- package/dist/cjs/components/Div/Div.js.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.d.ts +2 -43
- package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.d.ts +3 -3
- package/dist/cjs/components/Epic/Epic.js +7 -4
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/Epic/ScrollSaver.d.ts +0 -1
- package/dist/cjs/components/Epic/ScrollSaver.js +3 -1
- package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cjs/components/File/File.js +5 -2
- package/dist/cjs/components/File/File.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.js +3 -3
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.js +3 -1
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayout/FormLayout.d.ts +1 -1
- package/dist/cjs/components/FormLayout/FormLayout.js +6 -7
- package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/Gallery/Gallery.d.ts +1 -1
- package/dist/cjs/components/Gallery/Gallery.js +129 -80
- package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
- package/dist/cjs/components/Gradient/Gradient.js +2 -1
- package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
- package/dist/cjs/components/Group/Group.d.ts +1 -1
- package/dist/cjs/components/Group/Group.js +1 -1
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.js +4 -1
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +16 -8
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cjs/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/dist/cjs/components/HoverPopper/HoverPopper.js +6 -3
- package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.d.ts +1 -1
- package/dist/cjs/components/IconButton/IconButton.js +1 -1
- package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.js +2 -1
- package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +1 -1
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/cjs/components/Input/Input.d.ts +1 -1
- package/dist/cjs/components/Input/Input.js +1 -1
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/Link/Link.js +2 -1
- package/dist/cjs/components/Link/Link.js.map +1 -1
- package/dist/cjs/components/List/List.js +2 -1
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.d.ts +3 -3
- package/dist/cjs/components/ModalCard/ModalCard.js +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +2 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +2 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.d.ts +3 -3
- package/dist/cjs/components/ModalPage/ModalPage.js +2 -2
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +32 -32
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +116 -47
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootContext.d.ts +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootContext.js +20 -15
- package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +35 -16
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/ModalRoot/constants.js +1 -1
- package/dist/cjs/components/ModalRoot/types.d.ts +1 -1
- package/dist/cjs/components/ModalRoot/types.js.map +1 -1
- package/dist/cjs/components/ModalRoot/useModalManager.d.ts +9 -9
- package/dist/cjs/components/ModalRoot/useModalManager.js +11 -9
- package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cjs/components/ModalRoot/withModalRootContext.d.ts +1 -1
- package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +3 -3
- package/dist/cjs/components/NativeSelect/NativeSelect.js +5 -2
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js +1 -1
- package/dist/cjs/components/Panel/Panel.d.ts +3 -3
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +23 -23
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cjs/components/PanelSpinner/PanelSpinner.js +1 -1
- package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.js +2 -1
- package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cjs/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js +2 -2
- package/dist/cjs/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.d.ts +2 -2
- package/dist/cjs/components/Popper/Popper.js +11 -5
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.js +4 -5
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js +2 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +11 -8
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +12 -20
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.d.ts +1 -1
- package/dist/cjs/components/Radio/Radio.js +2 -1
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/RangeSlider/RangeSlider.js +18 -11
- package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cjs/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/dist/cjs/components/RangeSlider/UniversalSlider.js +18 -13
- package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/cjs/components/Removable/Removable.js +6 -3
- package/dist/cjs/components/Removable/Removable.js.map +1 -1
- package/dist/cjs/components/RichCell/RichCell.d.ts +1 -1
- package/dist/cjs/components/RichCell/RichCell.js +2 -1
- package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.d.ts +2 -43
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Root/Root.js +12 -12
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +2 -1
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cjs/components/Search/Search.d.ts +1 -1
- package/dist/cjs/components/Search/Search.js +12 -9
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/Select/Select.d.ts +3 -3
- package/dist/cjs/components/Select/Select.js +2 -1
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +3 -3
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/Separator/Separator.js +2 -1
- package/dist/cjs/components/Separator/Separator.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +2 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cjs/components/Slider/Slider.d.ts +1 -8
- package/dist/cjs/components/Slider/Slider.js +20 -15
- package/dist/cjs/components/Slider/Slider.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitch.d.ts +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js +14 -7
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.d.ts +3 -3
- package/dist/cjs/components/Snackbar/Snackbar.js +12 -4
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.js +1 -1
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +2 -2
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.js +2 -1
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.d.ts +2 -2
- package/dist/cjs/components/Tabs/Tabs.js +1 -1
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.js +2 -1
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.d.ts +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +9 -6
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.d.ts +2 -37
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.d.ts +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +4 -4
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.js +26 -10
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Tooltip/TooltipContainer.d.ts +1 -1
- package/dist/cjs/components/Tooltip/TooltipContainer.js +1 -1
- package/dist/cjs/components/Touch/Touch.js +38 -21
- package/dist/cjs/components/Touch/Touch.js.map +1 -1
- package/dist/cjs/components/Touch/TouchContext.js +2 -1
- package/dist/cjs/components/Touch/TouchContext.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.js +2 -1
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.js +2 -1
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.js +2 -1
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.js +2 -1
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.js +5 -3
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/UsersStack/masks.d.ts +1 -1
- package/dist/cjs/components/UsersStack/masks.js +1 -1
- package/dist/cjs/components/UsersStack/masks.js.map +1 -1
- package/dist/cjs/components/View/View.d.ts +9 -9
- package/dist/cjs/components/View/View.js +71 -31
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.d.ts +11 -11
- package/dist/cjs/components/View/ViewInfinite.js +73 -38
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/WriteBar/WriteBar.d.ts +1 -1
- package/dist/cjs/components/WriteBar/WriteBar.js +3 -4
- package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/helpers/getScheme.d.ts +8 -0
- package/dist/cjs/helpers/getScheme.js +37 -0
- package/dist/cjs/helpers/getScheme.js.map +1 -0
- package/dist/cjs/helpers/math.js +1 -1
- package/dist/cjs/helpers/scheme.d.ts +34 -0
- package/dist/cjs/helpers/scheme.js +75 -0
- package/dist/cjs/helpers/scheme.js.map +1 -0
- package/dist/cjs/hoc/withAdaptivity.d.ts +3 -2
- package/dist/cjs/hoc/withAdaptivity.js +4 -5
- package/dist/cjs/hoc/withAdaptivity.js.map +1 -1
- package/dist/cjs/hoc/withContext.d.ts +1 -1
- package/dist/cjs/hoc/withContext.js +1 -2
- package/dist/cjs/hoc/withContext.js.map +1 -1
- package/dist/cjs/hoc/withInsets.d.ts +3 -1
- package/dist/cjs/hoc/withInsets.js +1 -2
- package/dist/cjs/hoc/withInsets.js.map +1 -1
- package/dist/cjs/hoc/withPlatform.d.ts +3 -1
- package/dist/cjs/hoc/withPlatform.js +1 -2
- package/dist/cjs/hoc/withPlatform.js.map +1 -1
- package/dist/cjs/hooks/useAdaptivity.d.ts +2 -2
- package/dist/cjs/hooks/useAdaptivity.js.map +1 -1
- package/dist/cjs/hooks/useAppearance.d.ts +1 -1
- package/dist/cjs/hooks/useEnsuredControl.d.ts +1 -1
- package/dist/cjs/hooks/useEnsuredControl.js +1 -1
- package/dist/cjs/hooks/useEnsuredControl.js.map +1 -1
- package/dist/cjs/hooks/useEventListener.d.ts +3 -3
- package/dist/cjs/hooks/useEventListener.js +2 -2
- package/dist/cjs/hooks/useEventListener.js.map +1 -1
- package/dist/cjs/hooks/useExternRef.d.ts +1 -1
- package/dist/cjs/hooks/useExternRef.js +6 -3
- package/dist/cjs/hooks/useExternRef.js.map +1 -1
- package/dist/cjs/hooks/useFocusVisible.d.ts +1 -1
- package/dist/cjs/hooks/useGlobalEventListener.d.ts +2 -2
- package/dist/cjs/hooks/useGlobalEventListener.js +6 -2
- package/dist/cjs/hooks/useGlobalEventListener.js.map +1 -1
- package/dist/cjs/hooks/useInsets.d.ts +7 -1
- package/dist/cjs/hooks/useInsets.js.map +1 -1
- package/dist/cjs/hooks/useKeyboard.js +37 -29
- package/dist/cjs/hooks/useKeyboard.js.map +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.d.ts +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cjs/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cjs/hooks/usePlatform.d.ts +1 -1
- package/dist/cjs/hooks/usePlatform.js.map +1 -1
- package/dist/cjs/hooks/useTimeout.js +4 -2
- package/dist/cjs/hooks/useTimeout.js.map +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js +5 -2
- package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cjs/index.d.ts +3 -1
- package/dist/cjs/index.js +284 -274
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/SSR.d.ts +1 -1
- package/dist/cjs/lib/SSR.js +1 -1
- package/dist/cjs/lib/SSR.js.map +1 -1
- package/dist/cjs/lib/accessibility.d.ts +1 -1
- package/dist/cjs/lib/accessibility.js +4 -2
- package/dist/cjs/lib/accessibility.js.map +1 -1
- package/dist/cjs/lib/animate.js +1 -0
- package/dist/cjs/lib/animate.js.map +1 -1
- package/dist/cjs/lib/browser.js +1 -1
- package/dist/cjs/lib/dom.d.ts +3 -3
- package/dist/cjs/lib/dom.js +6 -4
- package/dist/cjs/lib/dom.js.map +1 -1
- package/dist/cjs/lib/getNavId.d.ts +1 -1
- package/dist/cjs/lib/is.js +3 -1
- package/dist/cjs/lib/is.js.map +1 -1
- package/dist/cjs/lib/isRefObject.js.map +1 -1
- package/dist/cjs/lib/jsxRuntime.d.ts +7 -3
- package/dist/cjs/lib/jsxRuntime.js +3 -5
- package/dist/cjs/lib/jsxRuntime.js.map +1 -1
- package/dist/cjs/lib/offset.d.ts +5 -5
- package/dist/cjs/lib/offset.js +5 -5
- package/dist/cjs/lib/offset.js.map +1 -1
- package/dist/cjs/lib/platform.js +1 -1
- package/dist/cjs/lib/polyfills.js.map +1 -1
- package/dist/cjs/lib/prefixClass.d.ts +1 -1
- package/dist/cjs/lib/prefixClass.js.map +1 -1
- package/dist/cjs/lib/select.d.ts +2 -2
- package/dist/cjs/lib/select.js +5 -3
- package/dist/cjs/lib/select.js.map +1 -1
- package/dist/cjs/lib/styles.d.ts +1 -1
- package/dist/cjs/lib/styles.js.map +1 -1
- package/dist/cjs/lib/supportEvents.d.ts +1 -1
- package/dist/cjs/lib/supportEvents.js.map +1 -1
- package/dist/cjs/lib/touch.js +2 -1
- package/dist/cjs/lib/touch.js.map +1 -1
- package/dist/cjs/lib/utils.d.ts +1 -1
- package/dist/cjs/lib/utils.js +6 -6
- package/dist/cjs/lib/utils.js.map +1 -1
- package/dist/cjs/tokenized/tokenized.d.ts +2 -0
- package/dist/cjs/tokenized/tokenized.js +16 -0
- package/dist/cjs/tokenized/tokenized.js.map +1 -0
- package/dist/cjs/unstable/index.js +8 -8
- package/dist/components/ActionSheet/ActionSheet.js +4 -2
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetContext.d.ts +6 -5
- package/dist/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +4 -3
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.d.ts +4 -4
- package/dist/components/AdaptivityProvider/AdaptivityContext.js +3 -1
- package/dist/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -5
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +12 -4
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +4 -21
- package/dist/components/Alert/Alert.js +32 -18
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts +1 -1
- package/dist/components/AppRoot/AppRoot.js +28 -16
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/AppRootContext.d.ts +1 -1
- package/dist/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.d.ts +1 -1
- package/dist/components/AppRoot/ScrollContext.js +5 -3
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +6 -0
- package/dist/components/AppearanceProvider/AppearanceProvider.js +33 -0
- package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
- package/dist/components/AppearanceProvider/AppearanceProviderContext.d.ts +8 -0
- package/dist/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
- package/dist/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
- package/dist/components/Avatar/Avatar.d.ts +1 -1
- package/dist/components/Avatar/Avatar.js +12 -13
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Banner/Banner.js +3 -2
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Button/Button.d.ts +1 -1
- package/dist/components/Button/Button.js +3 -2
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Card/Card.js +2 -1
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.d.ts +1 -1
- package/dist/components/CardGrid/CardGrid.js +2 -1
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.d.ts +1 -1
- package/dist/components/CardScroll/CardScroll.js +10 -1
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.js +1 -1
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/Cell/useDraggable.js +58 -46
- package/dist/components/Cell/useDraggable.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +1 -1
- package/dist/components/Checkbox/Checkbox.js +2 -1
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Chip/Chip.js +2 -1
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +1 -4
- package/dist/components/ChipsInput/ChipsInput.js +71 -62
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsInput/useChipsInput.d.ts +3 -3
- package/dist/components/ChipsInput/useChipsInput.js +2 -2
- package/dist/components/ChipsInput/useChipsInput.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +2 -5
- package/dist/components/ChipsSelect/ChipsSelect.js +80 -67
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ChipsSelect/useChipsSelect.d.ts +8 -8
- package/dist/components/ChipsSelect/useChipsSelect.js +6 -3
- package/dist/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/components/ClickPopper/ClickPopper.d.ts +1 -1
- package/dist/components/ClickPopper/ClickPopper.js +7 -3
- package/dist/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +3 -1
- package/dist/components/ConfigProvider/ConfigProvider.js +23 -44
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProviderContext.d.ts +1 -28
- package/dist/components/ConfigProvider/ConfigProviderContext.js +0 -20
- package/dist/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.js +2 -1
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/Counter/Counter.js +2 -1
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.js +24 -9
- package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +1 -65
- package/dist/components/CustomSelect/CustomSelect.js +98 -72
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.d.ts +2 -2
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.js +3 -2
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.d.ts +1 -1
- package/dist/components/DatePicker/DatePicker.js +41 -26
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/Div/Div.js +2 -1
- package/dist/components/Div/Div.js.map +1 -1
- package/dist/components/Dropdown/Dropdown.d.ts +2 -43
- package/dist/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/components/Epic/Epic.d.ts +3 -3
- package/dist/components/Epic/Epic.js +7 -4
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts +0 -1
- package/dist/components/Epic/ScrollSaver.js +2 -1
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/File/File.js +5 -2
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.js +3 -3
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/FormItem/FormItem.js +3 -1
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayout/FormLayout.d.ts +1 -1
- package/dist/components/FormLayout/FormLayout.js +6 -7
- package/dist/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/Gallery/Gallery.d.ts +1 -1
- package/dist/components/Gallery/Gallery.js +129 -80
- package/dist/components/Gallery/Gallery.js.map +1 -1
- package/dist/components/Gradient/Gradient.js +2 -1
- package/dist/components/Gradient/Gradient.js.map +1 -1
- package/dist/components/Group/Group.d.ts +1 -1
- package/dist/components/Group/Group.js +2 -1
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.js +4 -1
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +16 -8
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/dist/components/HoverPopper/HoverPopper.js +6 -3
- package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +1 -1
- package/dist/components/IconButton/IconButton.js +2 -1
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.js +2 -1
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/InitialsAvatar/InitialsAvatar.js +1 -1
- package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/components/Input/Input.d.ts +1 -1
- package/dist/components/Input/Input.js +2 -1
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Link/Link.js +2 -1
- package/dist/components/Link/Link.js.map +1 -1
- package/dist/components/List/List.js +2 -1
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts +3 -3
- package/dist/components/ModalCard/ModalCard.js +2 -1
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +2 -1
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js +2 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +3 -3
- package/dist/components/ModalPage/ModalPage.js +3 -2
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.d.ts +2 -10
- package/dist/components/ModalPageHeader/ModalPageHeader.js +28 -29
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +116 -47
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +3 -3
- package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootContext.d.ts +1 -1
- package/dist/components/ModalRoot/ModalRootContext.js +19 -14
- package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.d.ts +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +35 -16
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +1 -1
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.d.ts +9 -9
- package/dist/components/ModalRoot/useModalManager.js +11 -11
- package/dist/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/components/ModalRoot/withModalRootContext.d.ts +1 -1
- package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +3 -3
- package/dist/components/NativeSelect/NativeSelect.js +5 -2
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Panel/Panel.d.ts +3 -3
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +23 -22
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/PanelSpinner/PanelSpinner.js +2 -1
- package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.js +2 -1
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PopoutRoot/PopoutRoot.d.ts +3 -3
- package/dist/components/PopoutRoot/PopoutRoot.js +1 -1
- package/dist/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +2 -2
- package/dist/components/Popper/Popper.js +11 -5
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/Progress/Progress.js +4 -5
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.js +2 -1
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.js +11 -8
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/components/Radio/Radio.d.ts +1 -1
- package/dist/components/Radio/Radio.js +2 -1
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/RangeSlider/RangeSlider.js +18 -11
- package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/components/RangeSlider/UniversalSlider.d.ts +1 -1
- package/dist/components/RangeSlider/UniversalSlider.js +18 -13
- package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/components/Removable/Removable.js +6 -3
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/RichCell/RichCell.d.ts +1 -1
- package/dist/components/RichCell/RichCell.js +2 -1
- package/dist/components/RichCell/RichCell.js.map +1 -1
- package/dist/components/RichTooltip/RichTooltip.d.ts +2 -43
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Root/Root.js +12 -12
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js +2 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/Search/Search.d.ts +1 -1
- package/dist/components/Search/Search.js +13 -9
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/Select/Select.d.ts +3 -3
- package/dist/components/Select/Select.js +2 -1
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +4 -3
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/Separator/Separator.js +2 -1
- package/dist/components/Separator/Separator.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +2 -1
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/components/Slider/Slider.d.ts +1 -8
- package/dist/components/Slider/Slider.js +20 -15
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitch.d.ts +1 -1
- package/dist/components/SliderSwitch/SliderSwitch.js +14 -7
- package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitchButton.js +2 -1
- package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +3 -3
- package/dist/components/Snackbar/Snackbar.js +12 -4
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spinner/Spinner.js +2 -1
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +1 -1
- package/dist/components/SplitCol/SplitCol.js +1 -1
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.js +2 -1
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.d.ts +2 -2
- package/dist/components/Tabs/Tabs.js +2 -1
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.js +2 -1
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +1 -1
- package/dist/components/Tappable/Tappable.js +9 -6
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.d.ts +2 -37
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts +1 -1
- package/dist/components/Textarea/Textarea.js +5 -4
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.js +26 -10
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Tooltip/TooltipContainer.d.ts +1 -1
- package/dist/components/Touch/Touch.js +38 -21
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Touch/TouchContext.js +2 -1
- package/dist/components/Touch/TouchContext.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.js +2 -1
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.js +2 -1
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.js +2 -1
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.js +2 -1
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +6 -3
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/UsersStack/masks.d.ts +1 -1
- package/dist/components/UsersStack/masks.js +1 -1
- package/dist/components/UsersStack/masks.js.map +1 -1
- package/dist/components/View/View.d.ts +9 -9
- package/dist/components/View/View.js +70 -30
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.d.ts +11 -11
- package/dist/components/View/ViewInfinite.js +70 -36
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts +1 -1
- package/dist/components/WriteBar/WriteBar.js +3 -4
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +5 -5
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -2
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetContext.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -3
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +4 -3
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js +3 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityContext.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +12 -4
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.js +32 -18
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +28 -16
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRootContext.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.js +5 -3
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +33 -0
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -0
- package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js +3 -0
- package/dist/cssm/components/AppearanceProvider/AppearanceProviderContext.js.map +1 -0
- package/dist/cssm/components/Avatar/Avatar.js +12 -13
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js +3 -2
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Button/Button.js +3 -2
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Card/Card.js +2 -1
- package/dist/cssm/components/Card/Card.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.js +2 -1
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +10 -1
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.js +1 -1
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/Cell/useDraggable.js +58 -46
- package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +2 -1
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Chip/Chip.js +2 -1
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.js +71 -62
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsInput/useChipsInput.js +2 -2
- package/dist/cssm/components/ChipsInput/useChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +80 -67
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js +6 -3
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +1 -1
- package/dist/cssm/components/ClickPopper/ClickPopper.js +7 -3
- package/dist/cssm/components/ClickPopper/ClickPopper.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +23 -44
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js +0 -20
- package/dist/cssm/components/ConfigProvider/ConfigProviderContext.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.js +2 -1
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.js +2 -1
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js +24 -9
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +98 -72
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +3 -2
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +41 -26
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/Div/Div.js +2 -1
- package/dist/cssm/components/Div/Div.js.map +1 -1
- package/dist/cssm/components/Dropdown/Dropdown.js +1 -3
- package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.js +7 -4
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.js +2 -1
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/File/File.js +5 -2
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -4
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.js +3 -3
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.css +1 -1
- package/dist/cssm/components/FormItem/FormItem.js +3 -1
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormLayout/FormLayout.js +6 -7
- package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -2
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/Gallery/Gallery.js +129 -80
- package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
- package/dist/cssm/components/Gradient/Gradient.js +2 -1
- package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -1
- package/dist/cssm/components/Group/Group.js +2 -1
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Header/Header.js +4 -1
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +16 -8
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +2 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cssm/components/HoverPopper/HoverPopper.js +6 -3
- package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.js +2 -1
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.js +2 -1
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +1 -1
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/cssm/components/Input/Input.js +2 -1
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/Link/Link.js +2 -1
- package/dist/cssm/components/Link/Link.js.map +1 -1
- package/dist/cssm/components/List/List.js +2 -1
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +2 -1
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +2 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +3 -2
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +28 -29
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +116 -47
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootContext.js +19 -14
- package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +35 -16
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.js +11 -11
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +5 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +23 -22
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +5 -2
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js +2 -1
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.js +2 -1
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +3 -3
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.js +11 -5
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.js +4 -5
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js +2 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +11 -8
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +13 -17
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.js +2 -1
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/RangeSlider/RangeSlider.js +18 -11
- package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cssm/components/RangeSlider/UniversalSlider.js +18 -13
- package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.js +6 -3
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/RichCell/RichCell.js +2 -1
- package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.js +1 -3
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/Root/Root.js +12 -12
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +2 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cssm/components/Search/Search.css +1 -1
- package/dist/cssm/components/Search/Search.js +13 -9
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/Select/Select.js +2 -1
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -3
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.js +2 -1
- package/dist/cssm/components/Separator/Separator.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +2 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +7 -6
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cssm/components/Slider/Slider.js +20 -15
- package/dist/cssm/components/Slider/Slider.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js +14 -7
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +2 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.js +12 -4
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spinner/Spinner.js +2 -1
- package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.css +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +2 -1
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +2 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.js +2 -1
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.js +2 -1
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.css +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +9 -6
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.js +1 -3
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +5 -4
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.js +26 -10
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.js +38 -21
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Touch/TouchContext.js +2 -1
- package/dist/cssm/components/Touch/TouchContext.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.js +2 -1
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js +2 -1
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.js +2 -1
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.js +2 -1
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +6 -3
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/UsersStack/masks.js +1 -1
- package/dist/cssm/components/UsersStack/masks.js.map +1 -1
- package/dist/cssm/components/View/View.js +70 -30
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +70 -36
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.js +3 -4
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/fonts/fonts.css +1 -1
- package/dist/cssm/helpers/getScheme.js +28 -0
- package/dist/cssm/helpers/getScheme.js.map +1 -0
- package/dist/cssm/helpers/scheme.js +61 -0
- package/dist/cssm/helpers/scheme.js.map +1 -0
- package/dist/cssm/hoc/withAdaptivity.js +3 -4
- package/dist/cssm/hoc/withAdaptivity.js.map +1 -1
- package/dist/cssm/hoc/withContext.js +1 -2
- package/dist/cssm/hoc/withContext.js.map +1 -1
- package/dist/cssm/hoc/withInsets.js +1 -2
- package/dist/cssm/hoc/withInsets.js.map +1 -1
- package/dist/cssm/hoc/withPlatform.js +1 -2
- package/dist/cssm/hoc/withPlatform.js.map +1 -1
- package/dist/cssm/hooks/useAdaptivity.js.map +1 -1
- package/dist/cssm/hooks/useEnsuredControl.js +1 -1
- package/dist/cssm/hooks/useEnsuredControl.js.map +1 -1
- package/dist/cssm/hooks/useEventListener.js +2 -2
- package/dist/cssm/hooks/useEventListener.js.map +1 -1
- package/dist/cssm/hooks/useExternRef.js +6 -3
- package/dist/cssm/hooks/useExternRef.js.map +1 -1
- package/dist/cssm/hooks/useGlobalEventListener.js +6 -2
- package/dist/cssm/hooks/useGlobalEventListener.js.map +1 -1
- package/dist/cssm/hooks/useInsets.js.map +1 -1
- package/dist/cssm/hooks/useKeyboard.js +36 -29
- package/dist/cssm/hooks/useKeyboard.js.map +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js +1 -1
- package/dist/cssm/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/cssm/hooks/usePlatform.js.map +1 -1
- package/dist/cssm/hooks/useTimeout.js +4 -2
- package/dist/cssm/hooks/useTimeout.js.map +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js +5 -2
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/index.js +3 -1
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/SSR.js +1 -1
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/accessibility.js +3 -1
- package/dist/cssm/lib/accessibility.js.map +1 -1
- package/dist/cssm/lib/animate.js +1 -0
- package/dist/cssm/lib/animate.js.map +1 -1
- package/dist/cssm/lib/dom.js +2 -2
- package/dist/cssm/lib/dom.js.map +1 -1
- package/dist/cssm/lib/is.js +3 -1
- package/dist/cssm/lib/is.js.map +1 -1
- package/dist/cssm/lib/isRefObject.js.map +1 -1
- package/dist/cssm/lib/jsxRuntime.js +3 -3
- package/dist/cssm/lib/jsxRuntime.js.map +1 -1
- package/dist/cssm/lib/offset.js +5 -5
- package/dist/cssm/lib/offset.js.map +1 -1
- package/dist/cssm/lib/polyfills.js.map +1 -1
- package/dist/cssm/lib/prefixClass.js.map +1 -1
- package/dist/cssm/lib/select.js +5 -3
- package/dist/cssm/lib/select.js.map +1 -1
- package/dist/cssm/lib/styles.js.map +1 -1
- package/dist/cssm/lib/supportEvents.js.map +1 -1
- package/dist/cssm/lib/utils.js +1 -1
- package/dist/cssm/lib/utils.js.map +1 -1
- package/dist/cssm/styles/bright_light.css +1 -1
- package/dist/cssm/styles/components.css +5 -5
- package/dist/cssm/styles/constants.css +3 -3
- package/dist/cssm/styles/space_gray.css +1 -1
- package/dist/cssm/styles/themes.css +4 -4
- package/dist/cssm/styles/vkcom_dark.css +2 -2
- package/dist/cssm/styles/vkcom_light.css +3 -3
- package/dist/cssm/tokenized/tokenized.js +2 -0
- package/dist/cssm/tokenized/tokenized.js.map +1 -0
- package/dist/default_scheme.css +1 -1
- package/dist/default_scheme.css.map +1 -1
- package/dist/fonts.css +1 -1
- package/dist/fonts.css.map +1 -1
- package/dist/helpers/getScheme.d.ts +8 -0
- package/dist/helpers/getScheme.js +28 -0
- package/dist/helpers/getScheme.js.map +1 -0
- package/dist/helpers/scheme.d.ts +34 -0
- package/dist/helpers/scheme.js +61 -0
- package/dist/helpers/scheme.js.map +1 -0
- package/dist/hoc/withAdaptivity.d.ts +3 -2
- package/dist/hoc/withAdaptivity.js +3 -4
- package/dist/hoc/withAdaptivity.js.map +1 -1
- package/dist/hoc/withContext.d.ts +1 -1
- package/dist/hoc/withContext.js +1 -2
- package/dist/hoc/withContext.js.map +1 -1
- package/dist/hoc/withInsets.d.ts +3 -1
- package/dist/hoc/withInsets.js +1 -2
- package/dist/hoc/withInsets.js.map +1 -1
- package/dist/hoc/withPlatform.d.ts +3 -1
- package/dist/hoc/withPlatform.js +1 -2
- package/dist/hoc/withPlatform.js.map +1 -1
- package/dist/hooks/useAdaptivity.d.ts +2 -2
- package/dist/hooks/useAdaptivity.js.map +1 -1
- package/dist/hooks/useAppearance.d.ts +1 -1
- package/dist/hooks/useEnsuredControl.d.ts +1 -1
- package/dist/hooks/useEnsuredControl.js +1 -1
- package/dist/hooks/useEnsuredControl.js.map +1 -1
- package/dist/hooks/useEventListener.d.ts +3 -3
- package/dist/hooks/useEventListener.js +2 -2
- package/dist/hooks/useEventListener.js.map +1 -1
- package/dist/hooks/useExternRef.d.ts +1 -1
- package/dist/hooks/useExternRef.js +6 -3
- package/dist/hooks/useExternRef.js.map +1 -1
- package/dist/hooks/useFocusVisible.d.ts +1 -1
- package/dist/hooks/useGlobalEventListener.d.ts +2 -2
- package/dist/hooks/useGlobalEventListener.js +6 -2
- package/dist/hooks/useGlobalEventListener.js.map +1 -1
- package/dist/hooks/useInsets.d.ts +7 -1
- package/dist/hooks/useInsets.js.map +1 -1
- package/dist/hooks/useKeyboard.js +36 -29
- package/dist/hooks/useKeyboard.js.map +1 -1
- package/dist/hooks/usePatchChildrenRef.d.ts +1 -1
- package/dist/hooks/usePatchChildrenRef.js +1 -1
- package/dist/hooks/usePatchChildrenRef.js.map +1 -1
- package/dist/hooks/usePlatform.d.ts +1 -1
- package/dist/hooks/usePlatform.js.map +1 -1
- package/dist/hooks/useTimeout.js +4 -2
- package/dist/hooks/useTimeout.js.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/dist/hooks/useWaitTransitionFinish.js +5 -2
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +3 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/SSR.d.ts +1 -1
- package/dist/lib/SSR.js +1 -1
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/accessibility.d.ts +1 -1
- package/dist/lib/accessibility.js +3 -1
- package/dist/lib/accessibility.js.map +1 -1
- package/dist/lib/animate.js +1 -0
- package/dist/lib/animate.js.map +1 -1
- package/dist/lib/dom.d.ts +3 -3
- package/dist/lib/dom.js +2 -2
- package/dist/lib/dom.js.map +1 -1
- package/dist/lib/getNavId.d.ts +1 -1
- package/dist/lib/is.js +3 -1
- package/dist/lib/is.js.map +1 -1
- package/dist/lib/isRefObject.js.map +1 -1
- package/dist/lib/jsxRuntime.d.ts +7 -3
- package/dist/lib/jsxRuntime.js +3 -3
- package/dist/lib/jsxRuntime.js.map +1 -1
- package/dist/lib/offset.d.ts +5 -5
- package/dist/lib/offset.js +5 -5
- package/dist/lib/offset.js.map +1 -1
- package/dist/lib/polyfills.js.map +1 -1
- package/dist/lib/prefixClass.d.ts +1 -1
- package/dist/lib/prefixClass.js.map +1 -1
- package/dist/lib/select.d.ts +2 -2
- package/dist/lib/select.js +5 -3
- package/dist/lib/select.js.map +1 -1
- package/dist/lib/styles.d.ts +1 -1
- package/dist/lib/styles.js.map +1 -1
- package/dist/lib/supportEvents.d.ts +1 -1
- package/dist/lib/supportEvents.js.map +1 -1
- package/dist/lib/utils.d.ts +1 -1
- package/dist/lib/utils.js +1 -1
- package/dist/lib/utils.js.map +1 -1
- package/dist/tokenized/tokenized.d.ts +2 -0
- package/dist/tokenized/tokenized.js +2 -0
- package/dist/tokenized/tokenized.js.map +1 -0
- package/dist/unstable.css.map +1 -1
- package/dist/vkui.css +9 -9
- package/dist/vkui.css.map +1 -1
- package/package.json +37 -35
- package/src/components/ActionSheet/ActionSheet.tsx +3 -3
- package/src/components/ActionSheet/ActionSheetContext.ts +11 -7
- package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +5 -7
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +10 -4
- package/src/components/AdaptivityProvider/AdaptivityContext.tsx +6 -4
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +19 -13
- package/src/components/Alert/Alert.tsx +24 -17
- package/src/components/AppRoot/AppRoot.tsx +26 -17
- package/src/components/AppRoot/AppRootContext.ts +1 -1
- package/src/components/AppRoot/ScrollContext.ts +9 -9
- package/src/components/AppearanceProvider/AppearanceProvider.tsx +44 -0
- package/src/components/AppearanceProvider/AppearanceProviderContext.tsx +12 -0
- package/src/components/Avatar/Avatar.tsx +8 -14
- package/src/components/Banner/Banner.tsx +2 -1
- package/src/components/Button/Button.tsx +3 -2
- package/src/components/Card/Card.tsx +1 -0
- package/src/components/CardGrid/CardGrid.tsx +1 -0
- package/src/components/CardScroll/CardScroll.tsx +12 -2
- package/src/components/Cell/Cell.tsx +1 -1
- package/src/components/Cell/useDraggable.tsx +53 -45
- package/src/components/Checkbox/Checkbox.tsx +1 -0
- package/src/components/Chip/Chip.tsx +1 -0
- package/src/components/ChipsInput/ChipsInput.tsx +50 -45
- package/src/components/ChipsInput/useChipsInput.ts +10 -9
- package/src/components/ChipsSelect/ChipsSelect.tsx +78 -53
- package/src/components/ChipsSelect/Readme.md +44 -57
- package/src/components/ChipsSelect/useChipsSelect.ts +16 -10
- package/src/components/ClickPopper/ClickPopper.tsx +11 -7
- package/src/components/ConfigProvider/ConfigProvider.tsx +32 -56
- package/src/components/ConfigProvider/ConfigProviderContext.tsx +1 -40
- package/src/components/ContentCard/ContentCard.tsx +1 -0
- package/src/components/Counter/Counter.tsx +1 -0
- package/src/components/CustomScrollView/CustomScrollView.tsx +27 -20
- package/src/components/CustomSelect/CustomSelect.tsx +70 -49
- package/src/components/CustomSelect/Readme.md +1 -1
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +2 -2
- package/src/components/CustomSelectOption/CustomSelectOption.tsx +2 -1
- package/src/components/DatePicker/DatePicker.tsx +14 -18
- package/src/components/Div/Div.tsx +1 -0
- package/src/components/Dropdown/Dropdown.tsx +4 -45
- package/src/components/Epic/Epic.tsx +9 -9
- package/src/components/Epic/ScrollSaver.tsx +1 -2
- package/src/components/File/File.tsx +2 -1
- package/src/components/FixedLayout/FixedLayout.tsx +4 -3
- package/src/components/FocusTrap/FocusTrap.tsx +10 -8
- package/src/components/FormItem/FormItem.tsx +5 -1
- package/src/components/FormLayout/FormLayout.tsx +9 -9
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +6 -1
- package/src/components/Gallery/Gallery.tsx +71 -63
- package/src/components/Gradient/Gradient.tsx +1 -0
- package/src/components/Group/Group.tsx +1 -0
- package/src/components/Header/Header.tsx +3 -0
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +19 -6
- package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +1 -0
- package/src/components/HoverPopper/HoverPopper.tsx +6 -4
- package/src/components/IconButton/IconButton.tsx +1 -0
- package/src/components/InfoRow/InfoRow.tsx +1 -0
- package/src/components/InitialsAvatar/InitialsAvatar.tsx +1 -1
- package/src/components/Input/Input.tsx +1 -0
- package/src/components/Link/Link.tsx +1 -0
- package/src/components/List/List.tsx +1 -0
- package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -1
- package/src/components/ModalCard/ModalCard.tsx +3 -2
- package/src/components/ModalCardBase/ModalCardBase.tsx +5 -3
- package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -0
- package/src/components/ModalPage/ModalPage.tsx +4 -3
- package/src/components/ModalPageHeader/ModalPageHeader.css +9 -228
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +31 -41
- package/src/components/ModalRoot/ModalRoot.tsx +93 -62
- package/src/components/ModalRoot/ModalRootAdaptive.tsx +3 -5
- package/src/components/ModalRoot/ModalRootContext.tsx +12 -8
- package/src/components/ModalRoot/ModalRootDesktop.tsx +33 -19
- package/src/components/ModalRoot/types.ts +1 -1
- package/src/components/ModalRoot/useModalManager.tsx +31 -19
- package/src/components/ModalRoot/withModalRootContext.tsx +5 -3
- package/src/components/NativeSelect/NativeSelect.tsx +5 -7
- package/src/components/Panel/Panel.tsx +5 -11
- package/src/components/PanelHeader/PanelHeader.css +7 -3
- package/src/components/PanelHeader/PanelHeader.tsx +11 -19
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +1 -0
- package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +1 -0
- package/src/components/PanelHeaderContent/PanelHeaderContent.css +16 -5
- package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +4 -0
- package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +3 -3
- package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +1 -0
- package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +1 -0
- package/src/components/PanelSpinner/PanelSpinner.tsx +1 -0
- package/src/components/Placeholder/Placeholder.tsx +1 -0
- package/src/components/PopoutRoot/PopoutRoot.tsx +3 -3
- package/src/components/PopoutWrapper/PopoutWrapper.tsx +3 -3
- package/src/components/Popper/Popper.tsx +18 -14
- package/src/components/Progress/Progress.tsx +2 -5
- package/src/components/PromoBanner/PromoBanner.tsx +1 -0
- package/src/components/PullToRefresh/PullToRefresh.tsx +14 -7
- package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +7 -14
- package/src/components/Radio/Radio.tsx +1 -0
- package/src/components/RangeSlider/RangeSlider.tsx +20 -13
- package/src/components/RangeSlider/UniversalSlider.tsx +16 -14
- package/src/components/Removable/Removable.tsx +15 -8
- package/src/components/RichCell/RichCell.tsx +1 -0
- package/src/components/RichTooltip/RichTooltip.tsx +2 -44
- package/src/components/Root/Root.tsx +21 -9
- package/src/components/ScreenSpinner/ScreenSpinner.tsx +1 -0
- package/src/components/Search/Search.tsx +8 -7
- package/src/components/Select/Select.tsx +6 -2
- package/src/components/SelectMimicry/SelectMimicry.tsx +3 -2
- package/src/components/Separator/Separator.tsx +1 -0
- package/src/components/SimpleCell/SimpleCell.tsx +1 -0
- package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +7 -5
- package/src/components/Slider/Slider.tsx +23 -19
- package/src/components/SliderSwitch/SliderSwitch.tsx +7 -4
- package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -0
- package/src/components/Snackbar/Readme.md +26 -0
- package/src/components/Snackbar/Snackbar.tsx +10 -10
- package/src/components/Spinner/Spinner.tsx +1 -0
- package/src/components/SplitCol/SplitCol.tsx +2 -2
- package/src/components/Tabbar/Tabbar.tsx +1 -0
- package/src/components/TabbarItem/TabbarItem.tsx +1 -0
- package/src/components/Tabs/Tabs.tsx +1 -0
- package/src/components/TabsItem/TabsItem.tsx +1 -0
- package/src/components/Tappable/Tappable.tsx +6 -5
- package/src/components/TextTooltip/TextTooltip.tsx +3 -38
- package/src/components/Textarea/Textarea.tsx +4 -3
- package/src/components/Tooltip/Tooltip.tsx +20 -11
- package/src/components/Touch/Touch.tsx +25 -12
- package/src/components/Touch/TouchContext.ts +1 -0
- package/src/components/Typography/Caption/Caption.tsx +1 -0
- package/src/components/Typography/Headline/Headline.tsx +1 -0
- package/src/components/Typography/Subhead/Subhead.tsx +1 -0
- package/src/components/Typography/Text/Text.tsx +1 -0
- package/src/components/Typography/Title/Title.tsx +1 -0
- package/src/components/UsersStack/UsersStack.tsx +9 -1
- package/src/components/UsersStack/masks.tsx +2 -2
- package/src/components/View/View.tsx +83 -53
- package/src/components/View/ViewInfinite.tsx +94 -66
- package/src/components/WriteBar/WriteBar.tsx +5 -5
- package/src/components/WriteBarIcon/WriteBarIcon.tsx +1 -1
- package/src/helpers/getScheme.ts +27 -0
- package/src/helpers/scheme.ts +86 -0
- package/src/hoc/withAdaptivity.tsx +13 -6
- package/src/hoc/withContext.tsx +4 -5
- package/src/hoc/withInsets.tsx +7 -5
- package/src/hoc/withPlatform.tsx +9 -5
- package/src/hooks/useAdaptivity.ts +2 -1
- package/src/hooks/useEnsuredControl.ts +2 -2
- package/src/hooks/useEventListener.ts +32 -25
- package/src/hooks/useExternRef.ts +10 -4
- package/src/hooks/useGlobalEventListener.ts +19 -13
- package/src/hooks/useInsets.ts +8 -1
- package/src/hooks/useKeyboard.ts +33 -30
- package/src/hooks/usePatchChildrenRef.ts +3 -3
- package/src/hooks/usePlatform.ts +1 -1
- package/src/hooks/useTimeout.ts +15 -11
- package/src/hooks/useWaitTransitionFinish.ts +5 -3
- package/src/index.ts +2 -2
- package/src/lib/SSR.tsx +2 -2
- package/src/lib/accessibility.ts +1 -1
- package/src/lib/animate.ts +1 -0
- package/src/lib/dom.tsx +3 -3
- package/src/lib/isRefObject.ts +1 -1
- package/src/lib/jsxRuntime.ts +5 -7
- package/src/lib/offset.ts +10 -10
- package/src/lib/polyfills.ts +2 -2
- package/src/lib/prefixClass.ts +1 -1
- package/src/lib/select.ts +4 -4
- package/src/lib/styles.ts +1 -1
- package/src/lib/supportEvents.ts +1 -1
- package/src/lib/utils.ts +4 -2
- package/src/styles/bright_light.css +2 -1
- package/src/styles/space_gray.css +2 -1
- package/src/styles/vkcom_dark.css +2 -1
- package/src/styles/vkcom_light.css +2 -1
- package/src/testing/utils.tsx +4 -5
- package/src/tokenized/tokenized.ts +2 -0
- package/tokenized/index.d.ts +1 -0
- package/tokenized/package.json +4 -0
- package/tsconfig.json +1 -3
- package/types/global.d.ts +5 -0
- package/webpack.config.js +10 -8
- package/webpack.styles.config.js +5 -2
|
@@ -16,8 +16,10 @@ import { useDOM } from "../../lib/dom";
|
|
|
16
16
|
var UsersStack = function UsersStack(props) {
|
|
17
17
|
var platform = usePlatform();
|
|
18
18
|
|
|
19
|
-
var photos = props.photos,
|
|
20
|
-
|
|
19
|
+
var _props$photos = props.photos,
|
|
20
|
+
photos = _props$photos === void 0 ? [] : _props$photos,
|
|
21
|
+
_props$visibleCount = props.visibleCount,
|
|
22
|
+
visibleCount = _props$visibleCount === void 0 ? 0 : _props$visibleCount,
|
|
21
23
|
size = props.size,
|
|
22
24
|
layout = props.layout,
|
|
23
25
|
children = props.children,
|
|
@@ -64,6 +66,7 @@ UsersStack.defaultProps = {
|
|
|
64
66
|
size: "s",
|
|
65
67
|
visibleCount: 3,
|
|
66
68
|
layout: "horizontal"
|
|
67
|
-
};
|
|
69
|
+
}; // eslint-disable-next-line import/no-default-export
|
|
70
|
+
|
|
68
71
|
export default /*#__PURE__*/React.memo(UsersStack);
|
|
69
72
|
//# sourceMappingURL=UsersStack.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/UsersStack/UsersStack.tsx"],"names":["React","getClassName","usePlatform","hasReactNode","classNames","useIsomorphicLayoutEffect","Caption","Subhead","createMasks","useDOM","UsersStack","props","platform","photos","visibleCount","size","layout","children","restProps","document","othersCount","Math","max","length","canShowOthers","photosShown","slice","map","photo","i","backgroundImage","defaultProps","memo"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,yBAAT;AACA,OAAOC,OAAP;AACA,OAAOC,OAAP;AACA,SAASC,WAAT;AACA,SAASC,MAAT;;AAuBA,IAAMC,UAAqC,GAAG,SAAxCA,UAAwC,CAACC,KAAD,EAA4B;AACxE,MAAMC,QAAQ,GAAGV,WAAW,EAA5B;;AACA,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/UsersStack/UsersStack.tsx"],"names":["React","getClassName","usePlatform","hasReactNode","classNames","useIsomorphicLayoutEffect","Caption","Subhead","createMasks","useDOM","UsersStack","props","platform","photos","visibleCount","size","layout","children","restProps","document","othersCount","Math","max","length","canShowOthers","photosShown","slice","map","photo","i","backgroundImage","defaultProps","memo"],"mappings":";;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,YAAT;AACA,SAASC,WAAT;AACA,SAASC,YAAT;AACA,SAASC,UAAT;AACA,SAASC,yBAAT;AACA,OAAOC,OAAP;AACA,OAAOC,OAAP;AACA,SAASC,WAAT;AACA,SAASC,MAAT;;AAuBA,IAAMC,UAAqC,GAAG,SAAxCA,UAAwC,CAACC,KAAD,EAA4B;AACxE,MAAMC,QAAQ,GAAGV,WAAW,EAA5B;;AACA,sBAOIS,KAPJ,CACEE,MADF;AAAA,MACEA,MADF,8BACW,EADX;AAAA,4BAOIF,KAPJ,CAEEG,YAFF;AAAA,MAEEA,YAFF,oCAEiB,CAFjB;AAAA,MAGEC,IAHF,GAOIJ,KAPJ,CAGEI,IAHF;AAAA,MAIEC,MAJF,GAOIL,KAPJ,CAIEK,MAJF;AAAA,MAKEC,QALF,GAOIN,KAPJ,CAKEM,QALF;AAAA,MAMKC,SANL,4BAOIP,KAPJ;;AAQA,gBAAqBF,MAAM,EAA3B;AAAA,MAAQU,QAAR,WAAQA,QAAR;;AAEAd,EAAAA,yBAAyB,CAAC,YAAM;AAC9BG,IAAAA,WAAW,CAACW,QAAD,CAAX;AACD,GAFwB,EAEtB,CAACA,QAAD,CAFsB,CAAzB;AAIA,MAAMC,WAAW,GAAGC,IAAI,CAACC,GAAL,CAAS,CAAT,EAAYT,MAAM,CAACU,MAAP,GAAgBT,YAA5B,CAApB;AACA,MAAMU,aAAa,GAAGJ,WAAW,GAAG,CAAd,IAAmBL,IAAI,KAAK,GAAlD;AAEA,MAAMU,WAAW,GAAGZ,MAAM,CAACa,KAAP,CAAa,CAAb,EAAgBZ,YAAhB,CAApB;AAEA,SACE,wCACMI,SADN;AAEE,IAAA,SAAS,EAAEd,UAAU,CACnBH,YAAY,CAAC,YAAD,EAAeW,QAAf,CADO,6BAECG,IAFD,2BAGFC,MAHE,GAInB;AACE,4BAAsBQ;AADxB,KAJmB;AAFvB,MAWE;AAAK,IAAA,SAAS,EAAC,oBAAf;AAAoC,IAAA,IAAI,EAAC;AAAzC,KACGC,WAAW,CAACE,GAAZ,CAAgB,UAACC,KAAD,EAAQC,CAAR;AAAA,WACf;AACE,MAAA,GAAG,EAAEA,CADP;AAEE,MAAA,SAAS,EAAC,mBAFZ;AAGE,MAAA,KAAK,EAAE;AAAEC,QAAAA,eAAe,gBAASF,KAAT;AAAjB;AAHT,MADe;AAAA,GAAhB,CADH,EASGJ,aAAa,IACZ,oBAAC,OAAD;AACE,IAAA,MAAM,EAAC,QADT;AAEE,IAAA,KAAK,EAAC,GAFR;AAGE,IAAA,SAAS,EAAC,6CAHZ;AAIE,mBAAY;AAJd,KAME,uCAAQJ,WAAR,CANF,CAVJ,CAXF,EA+BGjB,YAAY,CAACc,QAAD,CAAZ,IACC,oBAAC,OAAD;AAAS,IAAA,SAAS,EAAC,MAAnB;AAA0B,IAAA,MAAM,EAAC,SAAjC;AAA2C,IAAA,SAAS,EAAC;AAArD,KACGA,QADH,CAhCJ,CADF;AAuCD,CA5DD;;AA8DAP,UAAU,CAACqB,YAAX,GAA0B;AACxBlB,EAAAA,MAAM,EAAE,EADgB;AAExBE,EAAAA,IAAI,EAAE,GAFkB;AAGxBD,EAAAA,YAAY,EAAE,CAHU;AAIxBE,EAAAA,MAAM,EAAE;AAJgB,CAA1B,C,CAOA;;AACA,4BAAehB,KAAK,CAACgC,IAAN,CAAWtB,UAAX,CAAf","sourcesContent":["import * as React from \"react\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport { classNames } from \"../../lib/classNames\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport Caption from \"../Typography/Caption/Caption\";\nimport Subhead from \"../Typography/Subhead/Subhead\";\nimport { createMasks } from \"./masks\";\nimport { useDOM } from \"../../lib/dom\";\nimport \"./UsersStack.css\";\n\nexport interface UsersStackProps extends React.HTMLAttributes<HTMLDivElement> {\n /**\n * Массив ссылок на фотографии\n */\n photos?: string[];\n /**\n * Размер аватарок\n */\n size?: \"xs\" | \"s\" | \"m\";\n /**\n * Вертикальный режим рекомендуется использовать с размером `m`\n */\n layout?: \"vertical\" | \"horizontal\";\n /**\n * Количество аватарок, которые будут показаны.\n * Если в массиве `photos` больше элементов и используется размер `m`, то будет показано количество остальных элементов\n */\n visibleCount?: number;\n}\n\nconst UsersStack: React.FC<UsersStackProps> = (props: UsersStackProps) => {\n const platform = usePlatform();\n const {\n photos = [],\n visibleCount = 0,\n size,\n layout,\n children,\n ...restProps\n } = props;\n const { document } = useDOM();\n\n useIsomorphicLayoutEffect(() => {\n createMasks(document);\n }, [document]);\n\n const othersCount = Math.max(0, photos.length - visibleCount);\n const canShowOthers = othersCount > 0 && size === \"m\";\n\n const photosShown = photos.slice(0, visibleCount);\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n getClassName(\"UsersStack\", platform),\n `UsersStack--size-${size}`,\n `UsersStack--l-${layout}`,\n {\n \"UsersStack--others\": canShowOthers,\n }\n )}\n >\n <div vkuiClass=\"UsersStack__photos\" role=\"presentation\">\n {photosShown.map((photo, i) => (\n <div\n key={i}\n vkuiClass=\"UsersStack__photo\"\n style={{ backgroundImage: `url(${photo})` }}\n />\n ))}\n\n {canShowOthers && (\n <Caption\n weight=\"medium\"\n level=\"1\"\n vkuiClass=\"UsersStack__photo UsersStack__photo--others\"\n aria-hidden=\"true\"\n >\n <span>+{othersCount}</span>\n </Caption>\n )}\n </div>\n {hasReactNode(children) && (\n <Subhead Component=\"span\" weight=\"regular\" vkuiClass=\"UsersStack__text\">\n {children}\n </Subhead>\n )}\n </div>\n );\n};\n\nUsersStack.defaultProps = {\n photos: [],\n size: \"s\",\n visibleCount: 3,\n layout: \"horizontal\",\n};\n\n// eslint-disable-next-line import/no-default-export\nexport default React.memo(UsersStack);\n"],"file":"UsersStack.js"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare function createMasks(document
|
|
1
|
+
export declare function createMasks(document?: Document): void;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { canUseDOM } from "../../lib/dom";
|
|
2
2
|
var masksCreated = [];
|
|
3
3
|
export function createMasks(document) {
|
|
4
|
-
if (!canUseDOM || masksCreated.includes(document)) {
|
|
4
|
+
if (!canUseDOM || !document || masksCreated.includes(document)) {
|
|
5
5
|
return;
|
|
6
6
|
} // eslint-disable-next-line no-restricted-globals
|
|
7
7
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/UsersStack/masks.tsx"],"names":["canUseDOM","masksCreated","createMasks","document","includes","svgElement","createElementNS","setAttributeNS","style","position","width","height","innerHTML","body","appendChild","push"],"mappings":"AAAA,SAASA,SAAT;AAEA,IAAMC,YAAwB,GAAG,EAAjC;AAEA,OAAO,SAASC,WAAT,CAAqBC,QAArB,
|
|
1
|
+
{"version":3,"sources":["../../../src/components/UsersStack/masks.tsx"],"names":["canUseDOM","masksCreated","createMasks","document","includes","svgElement","createElementNS","setAttributeNS","style","position","width","height","innerHTML","body","appendChild","push"],"mappings":"AAAA,SAASA,SAAT;AAEA,IAAMC,YAAwB,GAAG,EAAjC;AAEA,OAAO,SAASC,WAAT,CAAqBC,QAArB,EAAgD;AACrD,MAAI,CAACH,SAAD,IAAc,CAACG,QAAf,IAA2BF,YAAY,CAACG,QAAb,CAAsBD,QAAtB,CAA/B,EAAgE;AAC9D;AACD,GAHoD,CAKrD;;;AACA,MAAME,UAAU,GAAGF,QAAQ,CAACG,eAAT,CACjB,4BADiB,EAEjB,KAFiB,CAAnB;AAIAD,EAAAA,UAAU,CAACE,cAAX,CAA0B,IAA1B,EAAgC,IAAhC,EAAsC,oBAAtC;AACAF,EAAAA,UAAU,CAACE,cAAX,CAA0B,IAA1B,EAAgC,OAAhC,EAAyC,GAAzC;AACAF,EAAAA,UAAU,CAACE,cAAX,CAA0B,IAA1B,EAAgC,QAAhC,EAA0C,GAA1C;AACAF,EAAAA,UAAU,CAACG,KAAX,CAAiBC,QAAjB,GAA4B,UAA5B;AACAJ,EAAAA,UAAU,CAACG,KAAX,CAAiBE,KAAjB,GAAyB,KAAzB;AACAL,EAAAA,UAAU,CAACG,KAAX,CAAiBG,MAAjB,GAA0B,KAA1B;AAEAN,EAAAA,UAAU,CAACO,SAAX;AAsBAT,EAAAA,QAAQ,CAACU,IAAT,CAAcC,WAAd,CAA0BT,UAA1B;AACAJ,EAAAA,YAAY,CAACc,IAAb,CAAkBZ,QAAlB;AACD","sourcesContent":["import { canUseDOM } from \"../../lib/dom\";\n\nconst masksCreated: Document[] = [];\n\nexport function createMasks(document?: Document): void {\n if (!canUseDOM || !document || masksCreated.includes(document)) {\n return;\n }\n\n // eslint-disable-next-line no-restricted-globals\n const svgElement = document.createElementNS(\n \"http://www.w3.org/2000/svg\",\n \"svg\"\n );\n svgElement.setAttributeNS(null, \"id\", \"__SVG_MASKS_NODE__\");\n svgElement.setAttributeNS(null, \"width\", \"0\");\n svgElement.setAttributeNS(null, \"height\", \"0\");\n svgElement.style.position = \"absolute\";\n svgElement.style.width = \"0px\";\n svgElement.style.height = \"0px\";\n\n svgElement.innerHTML = `<defs>\n <clipPath id=\"users_stack_mask_16_left\">\n <path transform=\"translate(1.5 0)\" d=\"M1.20772 8C1.20772 6.32671 0.768742 4.75626 0 3.39821C1.44342 1.34278 3.8277 0 6.52463 0C10.9293 0 14.5 3.58172 14.5 8C14.5 12.4183 10.9293 16 6.52463 16C3.8277 16 1.44342 14.6572 0 12.6018C0.768742 11.2437 1.20772 9.6733 1.20772 8Z\"></path>\n </clipPath>\n\n <clipPath id=\"users_stack_mask_24_left\">\n <path d=\"M3.9971785,12 C3.9971785,9.49005736 3.33667467,7.13438366 2.18,5.09731189 C4.35181237,2.01417617 7.93927741,0 11.9971785,0 C18.6245955,0 23.9971785,5.372583 23.9971785,12 C23.9971785,18.627417 18.6245955,24 11.9971785,24 C7.93927741,24 4.35181237,21.9858238 2.18,18.9026881 C3.33667467,16.8656163 3.9971785,14.5099426 3.9971785,12 Z\"></path>\n </clipPath>\n\n <clipPath id=\"users_stack_mask_24_right\">\n <path d=\"M21.8171785,5.09731189 C20.6605038,7.13438366 20,9.49005736 20,12 C20,14.5099426 20.6605038,16.8656163 21.8171785,18.9026881 C19.6453661,21.9858238 16.0579011,24 12,24 C5.372583,24 3.90798505e-14,18.627417 3.90798505e-14,12 C3.90798505e-14,5.372583 5.372583,0 12,0 C16.0579011,0 19.6453661,2.01417617 21.8171785,5.09731189 Z\"></path>\n </clipPath>\n\n <clipPath id=\"users_stack_mask_32_left\">\n <path d=\"M2.13430019,23.9892466 C3.32858917,21.5820026 4,18.8694095 4,16 C4,13.1305905 3.32858917,10.4179974 2.13430019,8.0107534 C4.89924175,3.22241289 10.0733034,-2.30926389e-14 16,-2.30926389e-14 C24.836556,-2.30926389e-14 32,7.163444 32,16 C32,24.836556 24.836556,32 16,32 C10.0733034,32 4.89924175,28.7775871 2.13430019,23.9892466 L2.13430019,23.9892466 Z\"></path>\n </clipPath>\n\n <clipPath id=\"users_stack_mask_32_right\">\n <path d=\"M29.8656998,8.0107534 C28.6714108,10.4179974 28,13.1305905 28,16 C28,18.8694095 28.6714108,21.5820026 29.8656998,23.9892466 C27.1007583,28.7775871 21.9266966,32 16,32 C7.163444,32 3.90798505e-14,24.836556 3.90798505e-14,16 C3.90798505e-14,7.163444 7.163444,0 16,0 C21.9266966,0 27.1007583,3.22241289 29.8656998,8.0107534 Z\"></path>\n </clipPath>\n</defs>`;\n\n document.body.appendChild(svgElement);\n masksCreated.push(document);\n}\n"],"file":"masks.js"}
|
|
@@ -10,7 +10,7 @@ declare enum SwipeBackResults {
|
|
|
10
10
|
success = 2
|
|
11
11
|
}
|
|
12
12
|
interface Scrolls {
|
|
13
|
-
[index: string]: number;
|
|
13
|
+
[index: string]: number | undefined;
|
|
14
14
|
}
|
|
15
15
|
interface ViewsScrolls {
|
|
16
16
|
[index: string]: Scrolls;
|
|
@@ -64,17 +64,17 @@ export interface ViewProps extends React.HTMLAttributes<HTMLElement>, HasPlatfor
|
|
|
64
64
|
export interface ViewState {
|
|
65
65
|
animated: boolean;
|
|
66
66
|
visiblePanels: string[];
|
|
67
|
-
activePanel: string;
|
|
68
|
-
isBack: boolean;
|
|
69
|
-
prevPanel: string;
|
|
70
|
-
nextPanel: string;
|
|
67
|
+
activePanel: string | null;
|
|
68
|
+
isBack: boolean | undefined;
|
|
69
|
+
prevPanel: string | null;
|
|
70
|
+
nextPanel: string | null;
|
|
71
71
|
swipingBack: boolean;
|
|
72
72
|
swipebackStartX: number;
|
|
73
73
|
swipeBackShift: number;
|
|
74
|
-
swipeBackNextPanel: string;
|
|
75
|
-
swipeBackPrevPanel: string;
|
|
76
|
-
swipeBackResult: SwipeBackResults;
|
|
74
|
+
swipeBackNextPanel: string | null;
|
|
75
|
+
swipeBackPrevPanel: string | null;
|
|
76
|
+
swipeBackResult: SwipeBackResults | null;
|
|
77
77
|
browserSwipe: boolean;
|
|
78
78
|
}
|
|
79
|
-
declare const _default: React.FC<ViewProps
|
|
79
|
+
declare const _default: React.FC<Pick<ViewProps, "hidden" | "dir" | "nav" | "slot" | "style" | "title" | "scroll" | "color" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "role" | "tabIndex" | "aria-activedescendant" | "aria-atomic" | "aria-autocomplete" | "aria-busy" | "aria-checked" | "aria-colcount" | "aria-colindex" | "aria-colspan" | "aria-controls" | "aria-current" | "aria-describedby" | "aria-details" | "aria-disabled" | "aria-dropeffect" | "aria-errormessage" | "aria-expanded" | "aria-flowto" | "aria-grabbed" | "aria-haspopup" | "aria-hidden" | "aria-invalid" | "aria-keyshortcuts" | "aria-label" | "aria-labelledby" | "aria-level" | "aria-live" | "aria-modal" | "aria-multiline" | "aria-multiselectable" | "aria-orientation" | "aria-owns" | "aria-placeholder" | "aria-posinset" | "aria-pressed" | "aria-readonly" | "aria-relevant" | "aria-required" | "aria-roledescription" | "aria-rowcount" | "aria-rowindex" | "aria-rowspan" | "aria-selected" | "aria-setsize" | "aria-sort" | "aria-valuemax" | "aria-valuemin" | "aria-valuenow" | "aria-valuetext" | "dangerouslySetInnerHTML" | "onCopy" | "onCopyCapture" | "onCut" | "onCutCapture" | "onPaste" | "onPasteCapture" | "onCompositionEnd" | "onCompositionEndCapture" | "onCompositionStart" | "onCompositionStartCapture" | "onCompositionUpdate" | "onCompositionUpdateCapture" | "onFocus" | "onFocusCapture" | "onBlur" | "onBlurCapture" | "onChange" | "onChangeCapture" | "onBeforeInput" | "onBeforeInputCapture" | "onInput" | "onInputCapture" | "onReset" | "onResetCapture" | "onSubmit" | "onSubmitCapture" | "onInvalid" | "onInvalidCapture" | "onLoad" | "onLoadCapture" | "onError" | "onErrorCapture" | "onKeyDown" | "onKeyDownCapture" | "onKeyPress" | "onKeyPressCapture" | "onKeyUp" | "onKeyUpCapture" | "onAbort" | "onAbortCapture" | "onCanPlay" | "onCanPlayCapture" | "onCanPlayThrough" | "onCanPlayThroughCapture" | "onDurationChange" | "onDurationChangeCapture" | "onEmptied" | "onEmptiedCapture" | "onEncrypted" | "onEncryptedCapture" | "onEnded" | "onEndedCapture" | "onLoadedData" | "onLoadedDataCapture" | "onLoadedMetadata" | "onLoadedMetadataCapture" | "onLoadStart" | "onLoadStartCapture" | "onPause" | "onPauseCapture" | "onPlay" | "onPlayCapture" | "onPlaying" | "onPlayingCapture" | "onProgress" | "onProgressCapture" | "onRateChange" | "onRateChangeCapture" | "onSeeked" | "onSeekedCapture" | "onSeeking" | "onSeekingCapture" | "onStalled" | "onStalledCapture" | "onSuspend" | "onSuspendCapture" | "onTimeUpdate" | "onTimeUpdateCapture" | "onVolumeChange" | "onVolumeChangeCapture" | "onWaiting" | "onWaitingCapture" | "onAuxClick" | "onAuxClickCapture" | "onClick" | "onClickCapture" | "onContextMenu" | "onContextMenuCapture" | "onDoubleClick" | "onDoubleClickCapture" | "onDrag" | "onDragCapture" | "onDragEnd" | "onDragEndCapture" | "onDragEnter" | "onDragEnterCapture" | "onDragExit" | "onDragExitCapture" | "onDragLeave" | "onDragLeaveCapture" | "onDragOver" | "onDragOverCapture" | "onDragStart" | "onDragStartCapture" | "onDrop" | "onDropCapture" | "onMouseDown" | "onMouseDownCapture" | "onMouseEnter" | "onMouseLeave" | "onMouseMove" | "onMouseMoveCapture" | "onMouseOut" | "onMouseOutCapture" | "onMouseOver" | "onMouseOverCapture" | "onMouseUp" | "onMouseUpCapture" | "onSelect" | "onSelectCapture" | "onTouchCancel" | "onTouchCancelCapture" | "onTouchEnd" | "onTouchEndCapture" | "onTouchMove" | "onTouchMoveCapture" | "onTouchStart" | "onTouchStartCapture" | "onPointerDown" | "onPointerDownCapture" | "onPointerMove" | "onPointerMoveCapture" | "onPointerUp" | "onPointerUpCapture" | "onPointerCancel" | "onPointerCancelCapture" | "onPointerEnter" | "onPointerEnterCapture" | "onPointerLeave" | "onPointerLeaveCapture" | "onPointerOver" | "onPointerOverCapture" | "onPointerOut" | "onPointerOutCapture" | "onGotPointerCapture" | "onGotPointerCaptureCapture" | "onLostPointerCapture" | "onLostPointerCaptureCapture" | "onScroll" | "onScrollCapture" | "onWheel" | "onWheelCapture" | "onAnimationStart" | "onAnimationStartCapture" | "onAnimationEnd" | "onAnimationEndCapture" | "onAnimationIteration" | "onAnimationIterationCapture" | "onTransitionEnd" | "onTransitionEndCapture" | "defaultChecked" | "defaultValue" | "suppressContentEditableWarning" | "suppressHydrationWarning" | "accessKey" | "contentEditable" | "contextMenu" | "draggable" | "placeholder" | "spellCheck" | "radioGroup" | "about" | "datatype" | "inlist" | "property" | "resource" | "typeof" | "vocab" | "autoCapitalize" | "autoCorrect" | "autoSave" | "itemProp" | "itemScope" | "itemType" | "itemID" | "itemRef" | "results" | "security" | "unselectable" | "inputMode" | "is" | "scheme" | "popout" | "modal" | "onTransition" | "activePanel" | "onSwipeBack" | "onSwipeBackStart" | "onSwipeBackCancel" | "history" | "splitCol" | "configProvider">>;
|
|
80
80
|
export default _default;
|
|
@@ -49,15 +49,15 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
49
49
|
|
|
50
50
|
_defineProperty(_assertThisInitialized(_this), "scrolls", scrollsCache[getNavId(_this.props)] || {});
|
|
51
51
|
|
|
52
|
-
_defineProperty(_assertThisInitialized(_this), "transitionFinishTimeout",
|
|
52
|
+
_defineProperty(_assertThisInitialized(_this), "transitionFinishTimeout", undefined);
|
|
53
53
|
|
|
54
|
-
_defineProperty(_assertThisInitialized(_this), "animationFinishTimeout",
|
|
54
|
+
_defineProperty(_assertThisInitialized(_this), "animationFinishTimeout", undefined);
|
|
55
55
|
|
|
56
56
|
_defineProperty(_assertThisInitialized(_this), "panelNodes", {});
|
|
57
57
|
|
|
58
58
|
_defineProperty(_assertThisInitialized(_this), "transitionEndHandler", function (e) {
|
|
59
|
-
if (!e || ["vkui-animation-ios-next-forward", "vkui-animation-ios-prev-back", "vkui-animation-view-next-forward", "vkui-animation-view-prev-back"].includes(e.animationName)) {
|
|
60
|
-
_this.flushTransition(_this.state.prevPanel, _this.state.isBack);
|
|
59
|
+
if ((!e || ["vkui-animation-ios-next-forward", "vkui-animation-ios-prev-back", "vkui-animation-view-next-forward", "vkui-animation-view-prev-back"].includes(e.animationName)) && _this.state.prevPanel !== null) {
|
|
60
|
+
_this.flushTransition(_this.state.prevPanel, Boolean(_this.state.isBack));
|
|
61
61
|
}
|
|
62
62
|
});
|
|
63
63
|
|
|
@@ -86,19 +86,25 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
86
86
|
platform = _this$props.platform,
|
|
87
87
|
configProvider = _this$props.configProvider;
|
|
88
88
|
|
|
89
|
-
if (platform === IOS && !configProvider.isWebView && (e.startX <= 70 || e.startX >= _this.window.innerWidth - 70) && !_this.state.browserSwipe) {
|
|
89
|
+
if (platform === IOS && !(configProvider !== null && configProvider !== void 0 && configProvider.isWebView) && (e.startX <= 70 || e.startX >= _this.window.innerWidth - 70) && !_this.state.browserSwipe) {
|
|
90
90
|
_this.setState({
|
|
91
91
|
browserSwipe: true
|
|
92
92
|
});
|
|
93
93
|
}
|
|
94
94
|
|
|
95
|
-
if (platform === IOS && configProvider.isWebView && _this.props.onSwipeBack) {
|
|
96
|
-
|
|
95
|
+
if (platform === IOS && configProvider !== null && configProvider !== void 0 && configProvider.isWebView && _this.props.onSwipeBack) {
|
|
96
|
+
var _this$props$history$l, _this$props$history;
|
|
97
|
+
|
|
98
|
+
if (_this.state.animated && e.startX <= 70 || !_this.window) {
|
|
97
99
|
return;
|
|
98
100
|
}
|
|
99
101
|
|
|
100
|
-
if (e.startX <= 70 && !_this.state.swipingBack && _this.props.history.length > 1) {
|
|
101
|
-
_this.
|
|
102
|
+
if (e.startX <= 70 && !_this.state.swipingBack && ((_this$props$history$l = (_this$props$history = _this.props.history) === null || _this$props$history === void 0 ? void 0 : _this$props$history.length) !== null && _this$props$history$l !== void 0 ? _this$props$history$l : 0) > 1) {
|
|
103
|
+
if (_this.state.activePanel !== null) {
|
|
104
|
+
var _this$props$scroll;
|
|
105
|
+
|
|
106
|
+
_this.scrolls[_this.state.activePanel] = (_this$props$scroll = _this.props.scroll) === null || _this$props$scroll === void 0 ? void 0 : _this$props$scroll.getScroll().y;
|
|
107
|
+
}
|
|
102
108
|
|
|
103
109
|
_this.setState({
|
|
104
110
|
swipingBack: true,
|
|
@@ -109,12 +115,14 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
109
115
|
}
|
|
110
116
|
|
|
111
117
|
if (_this.state.swipingBack) {
|
|
112
|
-
var swipeBackShift;
|
|
118
|
+
var swipeBackShift = 0;
|
|
113
119
|
|
|
114
120
|
if (e.shiftX < 0) {
|
|
115
121
|
swipeBackShift = 0;
|
|
116
122
|
} else if (e.shiftX > _this.window.innerWidth - _this.state.swipebackStartX) {
|
|
117
|
-
|
|
123
|
+
var _this$window;
|
|
124
|
+
|
|
125
|
+
swipeBackShift = (_this$window = _this.window) === null || _this$window === void 0 ? void 0 : _this$window.innerWidth;
|
|
118
126
|
} else {
|
|
119
127
|
swipeBackShift = e.shiftX;
|
|
120
128
|
}
|
|
@@ -127,12 +135,14 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
127
135
|
});
|
|
128
136
|
|
|
129
137
|
_defineProperty(_assertThisInitialized(_this), "onEnd", function (e) {
|
|
130
|
-
if (_this.state.swipingBack) {
|
|
138
|
+
if (_this.state.swipingBack && _this.window) {
|
|
139
|
+
var _this$window$innerWid, _this$window2;
|
|
140
|
+
|
|
131
141
|
var speed = _this.state.swipeBackShift / e.duration * 1000;
|
|
132
142
|
|
|
133
143
|
if (_this.state.swipeBackShift === 0) {
|
|
134
144
|
_this.onSwipeBackCancel();
|
|
135
|
-
} else if (_this.state.swipeBackShift >= _this.window.innerWidth) {
|
|
145
|
+
} else if (_this.state.swipeBackShift >= ((_this$window$innerWid = (_this$window2 = _this.window) === null || _this$window2 === void 0 ? void 0 : _this$window2.innerWidth) !== null && _this$window$innerWid !== void 0 ? _this$window$innerWid : 0)) {
|
|
136
146
|
_this.onSwipeBackSuccess();
|
|
137
147
|
} else if (speed > 250 || _this.state.swipebackStartX + _this.state.swipeBackShift > _this.window.innerWidth / 2) {
|
|
138
148
|
_this.setState({
|
|
@@ -197,13 +207,15 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
197
207
|
this.props.modal && !prevProps.modal && this.blurActiveElement(); // Нужен переход
|
|
198
208
|
|
|
199
209
|
if (prevProps.activePanel !== this.props.activePanel && !prevState.swipingBack && !prevState.browserSwipe) {
|
|
210
|
+
var _this$props$scroll2;
|
|
211
|
+
|
|
200
212
|
var firstLayerId = this.panels.map(function (panel) {
|
|
201
213
|
return getNavId(panel.props, warn);
|
|
202
214
|
}).find(function (id) {
|
|
203
215
|
return id === prevProps.activePanel || id === _this2.props.activePanel;
|
|
204
216
|
});
|
|
205
217
|
var isBack = firstLayerId === this.props.activePanel;
|
|
206
|
-
this.scrolls[prevProps.activePanel] = this.props.scroll.getScroll().y;
|
|
218
|
+
this.scrolls[prevProps.activePanel] = (_this$props$scroll2 = this.props.scroll) === null || _this$props$scroll2 === void 0 ? void 0 : _this$props$scroll2.getScroll().y;
|
|
207
219
|
|
|
208
220
|
if (this.shouldDisableTransitionMotion()) {
|
|
209
221
|
this.flushTransition(prevProps.activePanel, isBack);
|
|
@@ -219,7 +231,10 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
219
231
|
}); // Фолбек анимации перехода
|
|
220
232
|
|
|
221
233
|
if (!animationEvent.supported) {
|
|
222
|
-
|
|
234
|
+
if (this.animationFinishTimeout) {
|
|
235
|
+
clearTimeout(this.animationFinishTimeout);
|
|
236
|
+
}
|
|
237
|
+
|
|
223
238
|
this.animationFinishTimeout = setTimeout(this.transitionEndHandler, this.props.platform === ANDROID || this.props.platform === VKCOM ? 300 : 600);
|
|
224
239
|
}
|
|
225
240
|
}
|
|
@@ -229,7 +244,11 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
229
244
|
if (prevProps.activePanel !== this.props.activePanel && prevState.swipingBack) {
|
|
230
245
|
var nextPanel = this.props.activePanel;
|
|
231
246
|
var prevPanel = prevProps.activePanel;
|
|
232
|
-
|
|
247
|
+
|
|
248
|
+
if (prevState.swipeBackPrevPanel !== null) {
|
|
249
|
+
this.scrolls[prevState.swipeBackPrevPanel] = 0;
|
|
250
|
+
}
|
|
251
|
+
|
|
233
252
|
this.setState({
|
|
234
253
|
swipeBackPrevPanel: null,
|
|
235
254
|
swipeBackNextPanel: null,
|
|
@@ -240,7 +259,11 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
240
259
|
activePanel: nextPanel,
|
|
241
260
|
visiblePanels: [nextPanel]
|
|
242
261
|
}, function () {
|
|
243
|
-
|
|
262
|
+
if (_this2.state.activePanel !== null) {
|
|
263
|
+
var _this2$props$scroll;
|
|
264
|
+
|
|
265
|
+
(_this2$props$scroll = _this2.props.scroll) === null || _this2$props$scroll === void 0 ? void 0 : _this2$props$scroll.scrollTo(0, _this2.scrolls[_this2.state.activePanel]);
|
|
266
|
+
}
|
|
244
267
|
|
|
245
268
|
prevProps.onTransition && prevProps.onTransition({
|
|
246
269
|
isBack: true,
|
|
@@ -261,8 +284,10 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
261
284
|
} // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)
|
|
262
285
|
|
|
263
286
|
|
|
264
|
-
if (prevState.swipeBackResult === SwipeBackResults.fail && !this.state.swipeBackResult) {
|
|
265
|
-
|
|
287
|
+
if (prevState.swipeBackResult === SwipeBackResults.fail && !this.state.swipeBackResult && this.state.activePanel !== null) {
|
|
288
|
+
var _this$props$scroll3;
|
|
289
|
+
|
|
290
|
+
(_this$props$scroll3 = this.props.scroll) === null || _this$props$scroll3 === void 0 ? void 0 : _this$props$scroll3.scrollTo(0, this.scrolls[this.state.activePanel]);
|
|
266
291
|
} // Закончился Safari свайп
|
|
267
292
|
|
|
268
293
|
|
|
@@ -280,29 +305,40 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
280
305
|
}, {
|
|
281
306
|
key: "shouldDisableTransitionMotion",
|
|
282
307
|
value: function shouldDisableTransitionMotion() {
|
|
283
|
-
|
|
308
|
+
var _this$props$configPro, _this$props$splitCol;
|
|
309
|
+
|
|
310
|
+
return ((_this$props$configPro = this.props.configProvider) === null || _this$props$configPro === void 0 ? void 0 : _this$props$configPro.transitionMotionEnabled) === false || !((_this$props$splitCol = this.props.splitCol) !== null && _this$props$splitCol !== void 0 && _this$props$splitCol.animate);
|
|
284
311
|
}
|
|
285
312
|
}, {
|
|
286
313
|
key: "waitTransitionFinish",
|
|
287
314
|
value: function waitTransitionFinish(elem, eventHandler) {
|
|
288
|
-
if (transitionEvent.supported) {
|
|
315
|
+
if (transitionEvent.supported && transitionEvent.name && elem) {
|
|
289
316
|
elem.removeEventListener(transitionEvent.name, eventHandler);
|
|
290
317
|
elem.addEventListener(transitionEvent.name, eventHandler);
|
|
291
318
|
} else {
|
|
292
|
-
|
|
319
|
+
if (this.transitionFinishTimeout) {
|
|
320
|
+
clearTimeout(this.transitionFinishTimeout);
|
|
321
|
+
}
|
|
322
|
+
|
|
293
323
|
this.transitionFinishTimeout = setTimeout(eventHandler, this.props.platform === ANDROID || this.props.platform === VKCOM ? 300 : 600);
|
|
294
324
|
}
|
|
295
325
|
}
|
|
296
326
|
}, {
|
|
297
327
|
key: "blurActiveElement",
|
|
298
328
|
value: function blurActiveElement() {
|
|
299
|
-
|
|
329
|
+
var _this$document;
|
|
330
|
+
|
|
331
|
+
if (typeof this.window !== "undefined" && (_this$document = this.document) !== null && _this$document !== void 0 && _this$document.activeElement) {
|
|
300
332
|
this.document.activeElement.blur();
|
|
301
333
|
}
|
|
302
334
|
}
|
|
303
335
|
}, {
|
|
304
336
|
key: "pickPanel",
|
|
305
337
|
value: function pickPanel(id) {
|
|
338
|
+
if (id === null) {
|
|
339
|
+
return undefined;
|
|
340
|
+
}
|
|
341
|
+
|
|
306
342
|
return this.panelNodes[id];
|
|
307
343
|
}
|
|
308
344
|
}, {
|
|
@@ -324,8 +360,9 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
324
360
|
animated: false,
|
|
325
361
|
isBack: undefined
|
|
326
362
|
}, function () {
|
|
327
|
-
_this3
|
|
363
|
+
var _this3$props$scroll;
|
|
328
364
|
|
|
365
|
+
(_this3$props$scroll = _this3.props.scroll) === null || _this3$props$scroll === void 0 ? void 0 : _this3$props$scroll.scrollTo(0, isBack ? _this3.scrolls[activePanel] : 0);
|
|
329
366
|
_this3.props.onTransition && _this3.props.onTransition({
|
|
330
367
|
isBack: isBack,
|
|
331
368
|
from: prevPanel,
|
|
@@ -354,7 +391,7 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
354
391
|
}, {
|
|
355
392
|
key: "calcPanelSwipeStyles",
|
|
356
393
|
value: function calcPanelSwipeStyles(panelId) {
|
|
357
|
-
if (!canUseDOM) {
|
|
394
|
+
if (!canUseDOM || !this.window) {
|
|
358
395
|
return {};
|
|
359
396
|
}
|
|
360
397
|
|
|
@@ -428,7 +465,7 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
428
465
|
var hasModal = !!modal;
|
|
429
466
|
var panels = this.panels.filter(function (panel) {
|
|
430
467
|
var panelId = getNavId(panel.props, warn);
|
|
431
|
-
return _this4.state.visiblePanels.includes(panelId) || panelId === swipeBackPrevPanel || panelId === swipeBackNextPanel;
|
|
468
|
+
return panelId !== undefined && _this4.state.visiblePanels.includes(panelId) || panelId === swipeBackPrevPanel || panelId === swipeBackNextPanel;
|
|
432
469
|
});
|
|
433
470
|
var disableAnimation = this.shouldDisableTransitionMotion();
|
|
434
471
|
var modifiers = {
|
|
@@ -445,6 +482,8 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
445
482
|
}), createScopedElement("div", {
|
|
446
483
|
vkuiClass: "View__panels"
|
|
447
484
|
}, panels.map(function (panel) {
|
|
485
|
+
var _this4$scrolls;
|
|
486
|
+
|
|
448
487
|
var panelId = getNavId(panel.props, warn);
|
|
449
488
|
var isPrev = panelId === prevPanel || panelId === swipeBackPrevPanel;
|
|
450
489
|
var isTransitionTarget = animated && panelId === (isBack ? prevPanel : nextPanel);
|
|
@@ -459,16 +498,16 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
459
498
|
"View__panel--swipe-back-success": swipeBackResult === SwipeBackResults.success,
|
|
460
499
|
"View__panel--swipe-back-failed": swipeBackResult === SwipeBackResults.fail
|
|
461
500
|
}),
|
|
462
|
-
onAnimationEnd: isTransitionTarget ? _this4.transitionEndHandler :
|
|
501
|
+
onAnimationEnd: isTransitionTarget ? _this4.transitionEndHandler : undefined,
|
|
463
502
|
ref: function ref(el) {
|
|
464
|
-
return _this4.panelNodes[panelId] = el;
|
|
503
|
+
return panelId !== undefined && (_this4.panelNodes[panelId] = el);
|
|
465
504
|
},
|
|
466
505
|
style: _this4.calcPanelSwipeStyles(panelId),
|
|
467
506
|
key: panelId
|
|
468
507
|
}, createScopedElement("div", {
|
|
469
508
|
vkuiClass: "View__panel-in",
|
|
470
509
|
style: {
|
|
471
|
-
marginTop: compensateScroll ? -_this4.scrolls[panelId] :
|
|
510
|
+
marginTop: compensateScroll ? -((_this4$scrolls = _this4.scrolls[panelId]) !== null && _this4$scrolls !== void 0 ? _this4$scrolls : 0) : undefined
|
|
472
511
|
}
|
|
473
512
|
}, createScopedElement(NavTransitionProvider, {
|
|
474
513
|
entering: panelId === nextPanel || panelId === swipeBackNextPanel
|
|
@@ -482,7 +521,8 @@ var View = /*#__PURE__*/function (_React$Component) {
|
|
|
482
521
|
}]);
|
|
483
522
|
|
|
484
523
|
return View;
|
|
485
|
-
}(React.Component);
|
|
524
|
+
}(React.Component); // eslint-disable-next-line import/no-default-export
|
|
525
|
+
|
|
486
526
|
|
|
487
527
|
_defineProperty(View, "defaultProps", {
|
|
488
528
|
history: []
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/View/View.tsx"],"names":["React","classNames","transitionEvent","animationEvent","getClassName","IOS","ANDROID","VKCOM","Touch","withPlatform","withContext","ConfigProviderContext","SplitColContext","AppRootPortal","canUseDOM","withDOM","ScrollContext","NavTransitionProvider","getNavId","warnOnce","swipeBackExcluded","warn","SwipeBackResults","scrollsCache","View","props","e","includes","animationName","flushTransition","state","prevPanel","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","platform","configProvider","isWebView","startX","window","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","scrolls","activePanel","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","undefined","nextPanel","document","Children","toArray","children","id","prevProps","prevState","popout","blurActiveElement","modal","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","supported","clearTimeout","animationFinishTimeout","setTimeout","transitionEndHandler","scrollTo","onTransition","from","to","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","removeEventListener","name","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","disableAnimation","modifiers","onMoveX","onEnd","isTransitionTarget","compensateScroll","el","calcPanelSwipeStyles","marginTop","Component"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nconst warn = warnOnce(\"View\");\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: number;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nexport let scrollsCache: ViewsScrolls = {};\n\nexport interface ViewProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewState {\n animated: boolean;\n\n visiblePanels: string[];\n activePanel: string;\n isBack: boolean;\n prevPanel: string;\n nextPanel: string;\n\n swipingBack: boolean;\n swipebackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string;\n swipeBackPrevPanel: string;\n swipeBackResult: SwipeBackResults;\n\n browserSwipe: boolean;\n}\n\nclass View extends React.Component<ViewProps & DOMProps, ViewState> {\n constructor(props: ViewProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipebackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewProps> = {\n history: [],\n };\n\n private readonly scrolls = scrollsCache[getNavId(this.props)] || {};\n private transitionFinishTimeout: ReturnType<typeof setTimeout>;\n private animationFinishTimeout: ReturnType<typeof setTimeout>;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n }\n\n componentDidUpdate(prevProps: ViewProps, prevState: ViewState) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find(\n (id) => id === prevProps.activePanel || id === this.props.activePanel\n );\n\n const isBack = firstLayerId === this.props.activePanel;\n this.scrolls[prevProps.activePanel] = this.props.scroll.getScroll().y;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.blurActiveElement();\n\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n clearTimeout(this.animationFinishTimeout);\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.props.activePanel;\n const prevPanel = prevProps.activePanel;\n this.scrolls[prevState.swipeBackPrevPanel] = 0;\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n this.props.scroll.scrollTo(0, this.scrolls[this.state.activePanel]);\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n }\n );\n }\n\n // Начался свайп назад\n if (!prevState.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult\n ) {\n this.props.scroll.scrollTo(0, this.scrolls[this.state.activePanel]);\n }\n\n // Закончился Safari свайп\n if (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider.transitionMotionEnabled === false ||\n !this.props.splitCol.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported) {\n elem.removeEventListener(transitionEvent.name, eventHandler);\n elem.addEventListener(transitionEvent.name, eventHandler);\n } else {\n clearTimeout(this.transitionFinishTimeout);\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string) {\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n if (isBack) {\n this.scrolls[prevPanel] = 0;\n }\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll.scrollTo(0, isBack ? this.scrolls[activePanel] : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n }\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n !e ||\n [\n \"vkui-animation-ios-next-forward\",\n \"vkui-animation-ios-prev-back\",\n \"vkui-animation-view-next-forward\",\n \"vkui-animation-view-prev-back\",\n ].includes(e.animationName)\n ) {\n this.flushTransition(this.state.prevPanel, this.state.isBack);\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e?.propertyName.includes(\"transform\") &&\n e?.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (e: TouchEvent): void => {\n if (swipeBackExcluded(e)) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider.isWebView &&\n (e.startX <= 70 || e.startX >= this.window.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider.isWebView &&\n this.props.onSwipeBack\n ) {\n if (this.state.animated && e.startX <= 70) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n this.props.history.length > 1\n ) {\n this.scrolls[this.state.activePanel] = this.props.scroll.getScroll().y;\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string): React.CSSProperties {\n if (!canUseDOM) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n isBack,\n animated,\n } = this.state;\n\n const hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels.filter((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n this.state.visiblePanels.includes(panelId) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n const modifiers = {\n \"View--animated\": !disableAnimation && animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isTransitionTarget =\n animated && panelId === (isBack ? prevPanel : nextPanel);\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n\n return (\n <div\n vkuiClass={classNames(\"View__panel\", {\n \"View__panel--active\": panelId === activePanel,\n \"View__panel--prev\": panelId === prevPanel,\n \"View__panel--next\": panelId === nextPanel,\n \"View__panel--swipe-back-prev\":\n panelId === swipeBackPrevPanel,\n \"View__panel--swipe-back-next\":\n panelId === swipeBackNextPanel,\n \"View__panel--swipe-back-success\":\n swipeBackResult === SwipeBackResults.success,\n \"View__panel--swipe-back-failed\":\n swipeBackResult === SwipeBackResults.fail,\n })}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : null\n }\n ref={(el) => (this.panelNodes[panelId] = el)}\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{\n marginTop: compensateScroll ? -this.scrolls[panelId] : null,\n }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\nexport default withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewProps>(View)),\n SplitColContext,\n \"splitCol\"\n ),\n ConfigProviderContext,\n \"configProvider\"\n ),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"View.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/View/View.tsx"],"names":["React","classNames","transitionEvent","animationEvent","getClassName","IOS","ANDROID","VKCOM","Touch","withPlatform","withContext","ConfigProviderContext","SplitColContext","AppRootPortal","canUseDOM","withDOM","ScrollContext","NavTransitionProvider","getNavId","warnOnce","swipeBackExcluded","warn","SwipeBackResults","scrollsCache","View","props","undefined","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","platform","configProvider","isWebView","startX","window","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","activePanel","scrolls","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","nextPanel","document","Children","toArray","children","id","prevProps","prevState","popout","blurActiveElement","modal","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","supported","animationFinishTimeout","clearTimeout","setTimeout","transitionEndHandler","scrollTo","onTransition","from","to","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","name","removeEventListener","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","disableAnimation","modifiers","onMoveX","onEnd","isTransitionTarget","compensateScroll","el","calcPanelSwipeStyles","marginTop","Component"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nconst warn = warnOnce(\"View\");\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: number | undefined;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nexport let scrollsCache: ViewsScrolls = {};\n\nexport interface ViewProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `Alert`, `ActionSheet` и `ScreenSpinner`.\n */\n popout?: React.ReactNode;\n /**\n * @deprecated будет удалено в 5.0.0. Используйте одноименное свойство у `SplitLayout`.\n *\n * Свойство для отрисовки `ModalRoot`.\n */\n modal?: React.ReactNode;\n onTransition?(params: { isBack: boolean; from: string; to: string }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewState {\n animated: boolean;\n\n visiblePanels: string[];\n activePanel: string | null;\n isBack: boolean | undefined;\n prevPanel: string | null;\n nextPanel: string | null;\n\n swipingBack: boolean;\n swipebackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string | null;\n swipeBackPrevPanel: string | null;\n swipeBackResult: SwipeBackResults | null;\n\n browserSwipe: boolean;\n}\n\nclass View extends React.Component<ViewProps & DOMProps, ViewState> {\n constructor(props: ViewProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipebackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewProps> = {\n history: [],\n };\n\n private readonly scrolls = scrollsCache[getNavId(this.props) as string] || {};\n private transitionFinishTimeout: number | undefined = undefined;\n private animationFinishTimeout: number | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n }\n\n componentDidUpdate(prevProps: ViewProps, prevState: ViewState) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find(\n (id) => id === prevProps.activePanel || id === this.props.activePanel\n );\n\n const isBack = firstLayerId === this.props.activePanel;\n this.scrolls[prevProps.activePanel] = this.props.scroll?.getScroll().y;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.blurActiveElement();\n\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.props.activePanel;\n const prevPanel = prevProps.activePanel;\n if (prevState.swipeBackPrevPanel !== null) {\n this.scrolls[prevState.swipeBackPrevPanel] = 0;\n }\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n if (this.state.activePanel !== null) {\n this.props.scroll?.scrollTo(\n 0,\n this.scrolls[this.state.activePanel]\n );\n }\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n }\n );\n }\n\n // Начался свайп назад\n if (!prevState.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n this.props.scroll?.scrollTo(0, this.scrolls[this.state.activePanel]);\n }\n\n // Закончился Safari свайп\n if (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n if (isBack) {\n this.scrolls[prevPanel] = 0;\n }\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll?.scrollTo(0, isBack ? this.scrolls[activePanel] : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n }\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n (!e ||\n [\n \"vkui-animation-ios-next-forward\",\n \"vkui-animation-ios-prev-back\",\n \"vkui-animation-view-next-forward\",\n \"vkui-animation-view-prev-back\",\n ].includes(e.animationName)) &&\n this.state.prevPanel !== null\n ) {\n this.flushTransition(this.state.prevPanel, Boolean(this.state.isBack));\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e?.propertyName.includes(\"transform\") &&\n e?.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipebackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (e: TouchEvent): void => {\n if (swipeBackExcluded(e)) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider?.isWebView &&\n (e.startX <= 70 || e.startX >= this.window!.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider?.isWebView &&\n this.props.onSwipeBack\n ) {\n if ((this.state.animated && e.startX <= 70) || !this.window) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n (this.props.history?.length ?? 0) > 1\n ) {\n if (this.state.activePanel !== null) {\n this.scrolls[this.state.activePanel] =\n this.props.scroll?.getScroll().y;\n }\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history!.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift = 0;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window?.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= (this.window?.innerWidth ?? 0)) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n isBack,\n animated,\n } = this.state;\n\n const hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels.filter((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined && this.state.visiblePanels.includes(panelId)) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n const modifiers = {\n \"View--animated\": !disableAnimation && animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isTransitionTarget =\n animated && panelId === (isBack ? prevPanel : nextPanel);\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n\n return (\n <div\n vkuiClass={classNames(\"View__panel\", {\n \"View__panel--active\": panelId === activePanel,\n \"View__panel--prev\": panelId === prevPanel,\n \"View__panel--next\": panelId === nextPanel,\n \"View__panel--swipe-back-prev\":\n panelId === swipeBackPrevPanel,\n \"View__panel--swipe-back-next\":\n panelId === swipeBackNextPanel,\n \"View__panel--swipe-back-success\":\n swipeBackResult === SwipeBackResults.success,\n \"View__panel--swipe-back-failed\":\n swipeBackResult === SwipeBackResults.fail,\n })}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : undefined\n }\n ref={(el) =>\n panelId !== undefined && (this.panelNodes[panelId] = el)\n }\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{\n marginTop: compensateScroll\n ? -(this.scrolls[panelId as string] ?? 0)\n : undefined,\n }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\n// eslint-disable-next-line import/no-default-export\nexport default withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewProps>(View)),\n SplitColContext,\n \"splitCol\"\n ),\n ConfigProviderContext,\n \"configProvider\"\n ),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"View.js"}
|