@vkontakte/vkui 4.31.0 → 4.32.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 +5350 -24885
- package/.cache/ts/src/components/ActionSheet/ActionSheet.d.ts +3 -0
- package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +3 -0
- package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -0
- package/.cache/ts/src/components/Alert/Alert.d.ts +9 -11
- package/.cache/ts/src/components/AppRoot/AppRoot.d.ts +3 -0
- package/.cache/ts/src/components/AppRoot/ScrollContext.d.ts +13 -2
- package/.cache/ts/src/components/AppearanceProvider/AppearanceProvider.d.ts +3 -0
- package/.cache/ts/src/components/Avatar/Avatar.d.ts +3 -0
- package/.cache/ts/src/components/Badge/Badge.d.ts +4 -1
- package/.cache/ts/src/components/Banner/Banner.d.ts +3 -0
- package/.cache/ts/src/components/Button/Button.d.ts +4 -1
- package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +3 -0
- package/.cache/ts/src/components/Calendar/Calendar.d.ts +3 -0
- package/.cache/ts/src/components/CalendarRange/CalendarRange.d.ts +3 -0
- package/.cache/ts/src/components/Card/Card.d.ts +3 -0
- package/.cache/ts/src/components/CardScroll/CardScroll.d.ts +3 -0
- package/.cache/ts/src/components/Cell/Cell.d.ts +5 -2
- package/.cache/ts/src/components/Cell/useDraggable.d.ts +4 -2
- package/.cache/ts/src/components/CellButton/CellButton.d.ts +3 -0
- package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +4 -1
- package/.cache/ts/src/components/Chip/Chip.d.ts +3 -0
- package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +3 -0
- package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +4 -1
- package/.cache/ts/src/components/ConfigProvider/ConfigProvider.d.ts +3 -0
- package/.cache/ts/src/components/ContentCard/ContentCard.d.ts +3 -0
- package/.cache/ts/src/components/Counter/Counter.d.ts +5 -3
- package/.cache/ts/src/components/CustomScrollView/CustomScrollView.d.ts +4 -4
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +13 -17
- package/.cache/ts/src/components/CustomSelectOption/CustomSelectOption.d.ts +3 -0
- package/.cache/ts/src/components/DateInput/DateInput.d.ts +3 -0
- package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +3 -0
- package/.cache/ts/src/components/Div/Div.d.ts +3 -0
- package/.cache/ts/src/components/Dropdown/Dropdown.d.ts +3 -0
- package/.cache/ts/src/components/Epic/Epic.d.ts +3 -0
- package/.cache/ts/src/components/Epic/ScrollSaver.d.ts +3 -0
- package/.cache/ts/src/components/File/File.d.ts +8 -4
- package/.cache/ts/src/components/FixedLayout/FixedLayout.d.ts +3 -0
- package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +3 -0
- package/.cache/ts/src/components/FocusVisible/FocusVisible.d.ts +3 -0
- package/.cache/ts/src/components/Footer/Footer.d.ts +3 -0
- package/.cache/ts/src/components/FormField/FormField.d.ts +8 -0
- package/.cache/ts/src/components/FormItem/FormItem.d.ts +3 -0
- package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +3 -0
- package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -0
- package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +3 -0
- package/.cache/ts/src/components/Gradient/Gradient.d.ts +3 -0
- package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +3 -0
- package/.cache/ts/src/components/Header/Header.d.ts +3 -0
- package/.cache/ts/src/components/HorizontalCell/HorizontalCell.d.ts +3 -0
- package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +3 -0
- package/.cache/ts/src/components/IconButton/IconButton.d.ts +1 -1
- package/.cache/ts/src/components/InfoRow/InfoRow.d.ts +4 -2
- package/.cache/ts/src/components/InitialsAvatar/InitialsAvatar.d.ts +3 -0
- package/.cache/ts/src/components/Input/Input.d.ts +4 -1
- package/.cache/ts/src/components/Link/Link.d.ts +3 -0
- package/.cache/ts/src/components/List/List.d.ts +3 -0
- package/.cache/ts/src/components/MiniInfoCell/MiniInfoCell.d.ts +3 -0
- package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +1 -1
- package/.cache/ts/src/components/ModalCardBase/ModalCardBase.d.ts +4 -1
- package/.cache/ts/src/components/ModalDismissButton/ModalDismissButton.d.ts +3 -0
- package/.cache/ts/src/components/ModalPageHeader/ModalPageHeader.d.ts +4 -2
- package/.cache/ts/src/components/ModalRoot/ModalRootAdaptive.d.ts +3 -0
- package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +6 -1
- package/.cache/ts/src/components/NavTransitionContext/NavTransitionContext.d.ts +1 -2
- package/.cache/ts/src/components/Pagination/Pagination.d.ts +3 -0
- package/.cache/ts/src/components/Panel/Panel.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeader/PanelHeader.d.ts +12 -2
- package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +1 -1
- package/.cache/ts/src/components/PanelHeaderButton/PanelHeaderButton.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeaderClose/PanelHeaderClose.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeaderContext/PanelHeaderContext.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +3 -0
- package/.cache/ts/src/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +3 -0
- package/.cache/ts/src/components/PanelSpinner/PanelSpinner.d.ts +4 -2
- package/.cache/ts/src/components/Placeholder/Placeholder.d.ts +3 -0
- package/.cache/ts/src/components/PopoutWrapper/PopoutWrapper.d.ts +3 -0
- package/.cache/ts/src/components/Popper/Popper.d.ts +3 -0
- package/.cache/ts/src/components/Progress/Progress.d.ts +4 -2
- package/.cache/ts/src/components/PromoBanner/PromoBanner.d.ts +3 -0
- package/.cache/ts/src/components/PullToRefresh/PullToRefresh.d.ts +9 -24
- package/.cache/ts/src/components/PullToRefresh/PullToRefreshSpinner.d.ts +1 -2
- package/.cache/ts/src/components/Radio/Radio.d.ts +4 -2
- package/.cache/ts/src/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/.cache/ts/src/components/RangeSlider/RangeSlider.d.ts +3 -0
- package/.cache/ts/src/components/Removable/Removable.d.ts +4 -1
- package/.cache/ts/src/components/RichCell/RichCell.d.ts +11 -3
- package/.cache/ts/src/components/RichTooltip/RichTooltip.d.ts +3 -0
- package/.cache/ts/src/components/Root/Root.d.ts +3 -0
- package/.cache/ts/src/components/ScreenSpinner/ScreenSpinner.d.ts +3 -0
- package/.cache/ts/src/components/Search/Search.d.ts +1 -1
- package/.cache/ts/src/components/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/.cache/ts/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -0
- package/.cache/ts/src/components/Select/Select.d.ts +13 -1
- package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +6 -5
- package/.cache/ts/src/components/Separator/Separator.d.ts +7 -2
- package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/.cache/ts/src/components/SimpleCheckbox/SimpleCheckbox.d.ts +3 -0
- package/.cache/ts/src/components/Slider/Slider.d.ts +3 -0
- package/.cache/ts/src/components/SliderSwitch/SliderSwitch.d.ts +1 -0
- package/.cache/ts/src/components/Snackbar/Snackbar.d.ts +3 -0
- package/.cache/ts/src/components/Spacing/Spacing.d.ts +4 -0
- package/.cache/ts/src/components/Spinner/Spinner.d.ts +5 -3
- package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +3 -0
- package/.cache/ts/src/components/SplitLayout/SplitLayout.d.ts +3 -0
- package/.cache/ts/src/components/SubnavigationBar/SubnavigationBar.d.ts +3 -0
- package/.cache/ts/src/components/SubnavigationButton/SubnavigationButton.d.ts +3 -0
- package/.cache/ts/src/components/Switch/Switch.d.ts +3 -0
- package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +3 -0
- package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +3 -0
- package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +3 -0
- package/.cache/ts/src/components/Tappable/Tappable.d.ts +1 -1
- package/.cache/ts/src/components/TextTooltip/TextTooltip.d.ts +3 -0
- package/.cache/ts/src/components/Textarea/Textarea.d.ts +1 -1
- package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +3 -0
- package/.cache/ts/src/components/Touch/Touch.d.ts +3 -0
- package/.cache/ts/src/components/Typography/Caption/Caption.d.ts +3 -0
- package/.cache/ts/src/components/Typography/Footnote/Footnote.d.ts +14 -0
- package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +11 -3
- package/.cache/ts/src/components/Typography/Paragraph/Paragraph.d.ts +3 -0
- package/.cache/ts/src/components/Typography/Subhead/Subhead.d.ts +3 -0
- package/.cache/ts/src/components/Typography/Text/Text.d.ts +10 -3
- package/.cache/ts/src/components/Typography/Title/Title.d.ts +3 -0
- package/.cache/ts/src/components/WriteBar/WriteBar.d.ts +3 -0
- package/.cache/ts/src/components/WriteBarIcon/WriteBarIcon.d.ts +3 -0
- package/.cache/ts/src/hooks/useKeyboard.d.ts +0 -1
- package/.cache/ts/src/hooks/usePrevious.d.ts +1 -0
- package/.cache/ts/src/index.d.ts +22 -18
- package/.cache/ts/src/lib/SSR.d.ts +3 -0
- package/.cache/ts/src/lib/select.d.ts +3 -1
- package/.cache/ts/src/tokenized/index.d.ts +40 -0
- package/.prettierignore +2 -1
- package/dist/cjs/components/ActionSheet/ActionSheet.d.ts +3 -0
- package/dist/cjs/components/ActionSheet/ActionSheet.js +3 -0
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.d.ts +3 -0
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +13 -10
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -0
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +4 -0
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.d.ts +9 -11
- package/dist/cjs/components/Alert/Alert.js +183 -243
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.d.ts +3 -0
- package/dist/cjs/components/AppRoot/AppRoot.js +9 -6
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.d.ts +13 -2
- package/dist/cjs/components/AppRoot/ScrollContext.js +193 -90
- package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.d.ts +3 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js +4 -0
- package/dist/cjs/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.d.ts +3 -0
- package/dist/cjs/components/Avatar/Avatar.js +4 -0
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Badge/Badge.d.ts +4 -1
- package/dist/cjs/components/Badge/Badge.js +6 -10
- package/dist/cjs/components/Badge/Badge.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.d.ts +3 -0
- package/dist/cjs/components/Banner/Banner.js +12 -18
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +3 -0
- package/dist/cjs/components/Button/Button.js +18 -12
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.d.ts +3 -0
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js +3 -0
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/Calendar/Calendar.d.ts +3 -0
- package/dist/cjs/components/Calendar/Calendar.js +3 -0
- package/dist/cjs/components/Calendar/Calendar.js.map +1 -1
- package/dist/cjs/components/CalendarDays/CalendarDays.js +2 -3
- package/dist/cjs/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js +60 -58
- package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cjs/components/CalendarRange/CalendarRange.d.ts +3 -0
- package/dist/cjs/components/CalendarRange/CalendarRange.js +4 -0
- package/dist/cjs/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cjs/components/Card/Card.d.ts +3 -0
- package/dist/cjs/components/Card/Card.js +3 -0
- package/dist/cjs/components/Card/Card.js.map +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.js +3 -0
- package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.d.ts +3 -0
- package/dist/cjs/components/CardScroll/CardScroll.js +3 -0
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.d.ts +5 -2
- package/dist/cjs/components/Cell/Cell.js +9 -3
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/Cell/useDraggable.d.ts +4 -2
- package/dist/cjs/components/Cell/useDraggable.js +3 -5
- package/dist/cjs/components/Cell/useDraggable.js.map +1 -1
- package/dist/cjs/components/CellButton/CellButton.d.ts +3 -0
- package/dist/cjs/components/CellButton/CellButton.js +3 -0
- package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.d.ts +3 -0
- package/dist/cjs/components/Checkbox/Checkbox.js +7 -5
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.d.ts +3 -0
- package/dist/cjs/components/Chip/Chip.js +11 -4
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.d.ts +3 -0
- package/dist/cjs/components/ChipsInput/ChipsInput.js +4 -0
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +4 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +5 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +3 -0
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js +4 -0
- package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cjs/components/ContentCard/ContentCard.d.ts +3 -0
- package/dist/cjs/components/ContentCard/ContentCard.js +6 -4
- package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cjs/components/Counter/Counter.d.ts +5 -3
- package/dist/cjs/components/Counter/Counter.js +19 -40
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/CustomScrollView/CustomScrollView.d.ts +4 -4
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js +137 -172
- package/dist/cjs/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +13 -17
- package/dist/cjs/components/CustomSelect/CustomSelect.js +18 -20
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js +6 -6
- package/dist/cjs/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.d.ts +3 -0
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +3 -0
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DateInput/DateInput.d.ts +3 -0
- package/dist/cjs/components/DateInput/DateInput.js +4 -0
- package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
- package/dist/cjs/components/DatePicker/DatePicker.js +4 -0
- package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.d.ts +3 -0
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -0
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/Div/Div.d.ts +3 -0
- package/dist/cjs/components/Div/Div.js +4 -6
- package/dist/cjs/components/Div/Div.js.map +1 -1
- package/dist/cjs/components/Dropdown/Dropdown.d.ts +3 -0
- package/dist/cjs/components/Dropdown/Dropdown.js +3 -0
- package/dist/cjs/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cjs/components/Epic/Epic.d.ts +3 -0
- package/dist/cjs/components/Epic/Epic.js +3 -0
- package/dist/cjs/components/Epic/Epic.js.map +1 -1
- package/dist/cjs/components/Epic/ScrollSaver.d.ts +3 -0
- package/dist/cjs/components/Epic/ScrollSaver.js +3 -0
- package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cjs/components/File/File.d.ts +8 -4
- package/dist/cjs/components/File/File.js +30 -37
- package/dist/cjs/components/File/File.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.d.ts +3 -0
- package/dist/cjs/components/FixedLayout/FixedLayout.js +3 -0
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FocusTrap/FocusTrap.d.ts +3 -0
- package/dist/cjs/components/FocusTrap/FocusTrap.js +3 -0
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/FocusVisible/FocusVisible.d.ts +3 -0
- package/dist/cjs/components/FocusVisible/FocusVisible.js +3 -0
- package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cjs/components/Footer/Footer.d.ts +3 -0
- package/dist/cjs/components/Footer/Footer.js +3 -0
- package/dist/cjs/components/Footer/Footer.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.d.ts +8 -0
- package/dist/cjs/components/FormField/FormField.js +14 -4
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.d.ts +3 -0
- package/dist/cjs/components/FormItem/FormItem.js +3 -0
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayout/FormLayout.d.ts +3 -0
- package/dist/cjs/components/FormLayout/FormLayout.js +3 -0
- package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -0
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +3 -0
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/FormStatus/FormStatus.d.ts +3 -0
- package/dist/cjs/components/FormStatus/FormStatus.js +6 -3
- package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cjs/components/Gallery/Gallery.js +3 -0
- package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
- package/dist/cjs/components/Gradient/Gradient.d.ts +3 -0
- package/dist/cjs/components/Gradient/Gradient.js +3 -0
- package/dist/cjs/components/Gradient/Gradient.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +3 -0
- package/dist/cjs/components/GridAvatar/GridAvatar.js +3 -0
- package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cjs/components/Group/Group.js +5 -2
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.d.ts +3 -0
- package/dist/cjs/components/Header/Header.js +26 -38
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.d.ts +3 -0
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js +3 -0
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +3 -0
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +4 -0
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.js +3 -0
- package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/InfoRow/InfoRow.d.ts +4 -2
- package/dist/cjs/components/InfoRow/InfoRow.js +10 -14
- package/dist/cjs/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.d.ts +3 -0
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +4 -0
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/cjs/components/Input/Input.d.ts +4 -1
- package/dist/cjs/components/Input/Input.js +4 -0
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/Link/Link.d.ts +3 -0
- package/dist/cjs/components/Link/Link.js +3 -0
- package/dist/cjs/components/Link/Link.js.map +1 -1
- package/dist/cjs/components/List/List.d.ts +3 -0
- package/dist/cjs/components/List/List.js +3 -0
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.d.ts +3 -0
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +6 -3
- package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cjs/components/ModalCard/ModalCard.js +3 -0
- package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.d.ts +4 -1
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js +6 -3
- package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.d.ts +3 -0
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +3 -0
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.js +3 -0
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.d.ts +4 -2
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +14 -18
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +3 -0
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js +4 -0
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +6 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.js +17 -23
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/NavTransitionContext/NavTransitionContext.d.ts +1 -2
- package/dist/cjs/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
- package/dist/cjs/components/Pagination/Pagination.d.ts +3 -0
- package/dist/cjs/components/Pagination/Pagination.js +3 -0
- package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.d.ts +3 -0
- package/dist/cjs/components/Panel/Panel.js +4 -0
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +12 -2
- package/dist/cjs/components/PanelHeader/PanelHeader.js +66 -42
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +3 -0
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +6 -3
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +3 -0
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +10 -6
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +3 -0
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -0
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +3 -0
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +3 -0
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cjs/components/PanelSpinner/PanelSpinner.d.ts +4 -2
- package/dist/cjs/components/PanelSpinner/PanelSpinner.js +12 -14
- package/dist/cjs/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/cjs/components/Placeholder/Placeholder.d.ts +3 -0
- package/dist/cjs/components/Placeholder/Placeholder.js +6 -3
- package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.d.ts +3 -0
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +3 -0
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popper/Popper.d.ts +3 -0
- package/dist/cjs/components/Popper/Popper.js +3 -0
- package/dist/cjs/components/Popper/Popper.js.map +1 -1
- package/dist/cjs/components/Progress/Progress.d.ts +4 -2
- package/dist/cjs/components/Progress/Progress.js +8 -15
- package/dist/cjs/components/Progress/Progress.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.d.ts +3 -0
- package/dist/cjs/components/PromoBanner/PromoBanner.js +3 -0
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +9 -24
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js +217 -271
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.d.ts +1 -2
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js +4 -14
- package/dist/cjs/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.d.ts +4 -2
- package/dist/cjs/components/Radio/Radio.js +46 -27
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/dist/cjs/components/RadioGroup/RadioGroup.js +4 -6
- package/dist/cjs/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cjs/components/RangeSlider/RangeSlider.d.ts +3 -0
- package/dist/cjs/components/RangeSlider/RangeSlider.js +3 -0
- package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cjs/components/Removable/Removable.d.ts +4 -1
- package/dist/cjs/components/Removable/Removable.js +6 -0
- package/dist/cjs/components/Removable/Removable.js.map +1 -1
- package/dist/cjs/components/RichCell/RichCell.d.ts +10 -2
- package/dist/cjs/components/RichCell/RichCell.js +10 -8
- package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
- package/dist/cjs/components/RichTooltip/RichTooltip.d.ts +3 -0
- package/dist/cjs/components/RichTooltip/RichTooltip.js +3 -0
- package/dist/cjs/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cjs/components/Root/Root.d.ts +3 -0
- package/dist/cjs/components/Root/Root.js +3 -0
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.d.ts +3 -0
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +5 -2
- package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/cjs/components/Search/Search.js +10 -9
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js +11 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -0
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +21 -9
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cjs/components/Select/Select.d.ts +13 -1
- package/dist/cjs/components/Select/Select.js +68 -12
- package/dist/cjs/components/Select/Select.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.d.ts +6 -5
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +23 -35
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/Separator/Separator.d.ts +7 -2
- package/dist/cjs/components/Separator/Separator.js +10 -24
- package/dist/cjs/components/Separator/Separator.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +11 -10
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.d.ts +3 -0
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +3 -0
- package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cjs/components/Slider/Slider.d.ts +3 -0
- package/dist/cjs/components/Slider/Slider.js +3 -0
- package/dist/cjs/components/Slider/Slider.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitch.d.ts +1 -0
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +3 -3
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cjs/components/Snackbar/Snackbar.d.ts +3 -0
- package/dist/cjs/components/Snackbar/Snackbar.js +6 -3
- package/dist/cjs/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cjs/components/Spacing/Spacing.d.ts +4 -0
- package/dist/cjs/components/Spacing/Spacing.js +7 -17
- package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
- package/dist/cjs/components/Spinner/Spinner.d.ts +5 -3
- package/dist/cjs/components/Spinner/Spinner.js +22 -35
- package/dist/cjs/components/Spinner/Spinner.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.d.ts +3 -0
- package/dist/cjs/components/SplitCol/SplitCol.js +23 -6
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SplitLayout/SplitLayout.d.ts +3 -0
- package/dist/cjs/components/SplitLayout/SplitLayout.js +3 -0
- package/dist/cjs/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.d.ts +3 -0
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +4 -0
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.d.ts +3 -0
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +4 -0
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.d.ts +3 -0
- package/dist/cjs/components/Switch/Switch.js +4 -5
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.d.ts +3 -0
- package/dist/cjs/components/Tabbar/Tabbar.js +3 -0
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +3 -0
- package/dist/cjs/components/TabbarItem/TabbarItem.js +5 -2
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tabs/Tabs.js +4 -0
- package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
- package/dist/cjs/components/TabsItem/TabsItem.d.ts +3 -0
- package/dist/cjs/components/TabsItem/TabsItem.js +9 -6
- package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +29 -31
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/TextTooltip/TextTooltip.d.ts +3 -0
- package/dist/cjs/components/TextTooltip/TextTooltip.js +3 -0
- package/dist/cjs/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +4 -0
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/cjs/components/Tooltip/Tooltip.js +4 -0
- package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cjs/components/Touch/Touch.d.ts +3 -0
- package/dist/cjs/components/Touch/Touch.js +3 -0
- package/dist/cjs/components/Touch/Touch.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.d.ts +3 -0
- package/dist/cjs/components/Typography/Caption/Caption.js +3 -0
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Footnote/Footnote.d.ts +14 -0
- package/dist/cjs/components/Typography/Footnote/Footnote.js +36 -0
- package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -0
- package/dist/cjs/components/Typography/Headline/Headline.d.ts +11 -3
- package/dist/cjs/components/Typography/Headline/Headline.js +19 -8
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Paragraph/Paragraph.d.ts +3 -0
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js +3 -0
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +3 -0
- package/dist/cjs/components/Typography/Subhead/Subhead.js +3 -0
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.d.ts +10 -3
- package/dist/cjs/components/Typography/Text/Text.js +17 -12
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.d.ts +3 -0
- package/dist/cjs/components/Typography/Title/Title.js +3 -0
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.js +3 -0
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/View.js +3 -0
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/WriteBar/WriteBar.d.ts +3 -0
- package/dist/cjs/components/WriteBar/WriteBar.js +3 -0
- package/dist/cjs/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.d.ts +3 -0
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +5 -2
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/hooks/useKeyboard.d.ts +0 -1
- package/dist/cjs/hooks/useKeyboard.js +2 -20
- package/dist/cjs/hooks/useKeyboard.js.map +1 -1
- package/dist/cjs/hooks/usePrevious.d.ts +1 -0
- package/dist/cjs/hooks/usePrevious.js +19 -0
- package/dist/cjs/hooks/usePrevious.js.map +1 -0
- package/dist/cjs/hooks/useWaitTransitionFinish.js +2 -3
- package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cjs/index.d.ts +22 -18
- package/dist/cjs/index.js +46 -30
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/SSR.d.ts +3 -0
- package/dist/cjs/lib/SSR.js +3 -0
- package/dist/cjs/lib/SSR.js.map +1 -1
- package/dist/cjs/lib/select.d.ts +3 -1
- package/dist/cjs/lib/select.js +21 -6
- package/dist/cjs/lib/select.js.map +1 -1
- package/dist/cjs/tokenized/index.d.ts +40 -0
- package/dist/cjs/tokenized/index.js +160 -0
- package/dist/cjs/tokenized/index.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.d.ts +3 -0
- package/dist/components/ActionSheet/ActionSheet.js +4 -0
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +3 -0
- package/dist/components/ActionSheetItem/ActionSheetItem.js +9 -6
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -0
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +3 -0
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.d.ts +9 -11
- package/dist/components/Alert/Alert.js +190 -255
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.d.ts +3 -0
- package/dist/components/AppRoot/AppRoot.js +10 -7
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.d.ts +13 -2
- package/dist/components/AppRoot/ScrollContext.js +181 -86
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/AppearanceProvider/AppearanceProvider.d.ts +3 -0
- package/dist/components/AppearanceProvider/AppearanceProvider.js +4 -0
- package/dist/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +3 -0
- package/dist/components/Avatar/Avatar.js +3 -0
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Badge/Badge.d.ts +4 -1
- package/dist/components/Badge/Badge.js +7 -8
- package/dist/components/Badge/Badge.js.map +1 -1
- package/dist/components/Banner/Banner.d.ts +3 -0
- package/dist/components/Banner/Banner.js +10 -17
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Button/Button.d.ts +3 -0
- package/dist/components/Button/Button.js +14 -8
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +3 -0
- package/dist/components/ButtonGroup/ButtonGroup.js +4 -0
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/Calendar/Calendar.d.ts +3 -0
- package/dist/components/Calendar/Calendar.js +4 -0
- package/dist/components/Calendar/Calendar.js.map +1 -1
- package/dist/components/CalendarDays/CalendarDays.js +2 -3
- package/dist/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/components/CalendarHeader/CalendarHeader.js +59 -58
- package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/components/CalendarRange/CalendarRange.d.ts +3 -0
- package/dist/components/CalendarRange/CalendarRange.js +4 -0
- package/dist/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/components/Card/Card.d.ts +3 -0
- package/dist/components/Card/Card.js +4 -0
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.js +3 -0
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.d.ts +3 -0
- package/dist/components/CardScroll/CardScroll.js +4 -0
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts +5 -2
- package/dist/components/Cell/Cell.js +9 -3
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/Cell/useDraggable.d.ts +4 -2
- package/dist/components/Cell/useDraggable.js +3 -5
- package/dist/components/Cell/useDraggable.js.map +1 -1
- package/dist/components/CellButton/CellButton.d.ts +3 -0
- package/dist/components/CellButton/CellButton.js +3 -0
- package/dist/components/CellButton/CellButton.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +3 -0
- package/dist/components/Checkbox/Checkbox.js +8 -5
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/Chip/Chip.d.ts +3 -0
- package/dist/components/Chip/Chip.js +10 -4
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +3 -0
- package/dist/components/ChipsInput/ChipsInput.js +4 -0
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -1
- package/dist/components/ChipsSelect/ChipsSelect.js +5 -1
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/ConfigProvider/ConfigProvider.d.ts +3 -0
- package/dist/components/ConfigProvider/ConfigProvider.js +4 -0
- package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/components/ContentCard/ContentCard.d.ts +3 -0
- package/dist/components/ContentCard/ContentCard.js +5 -3
- package/dist/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/components/Counter/Counter.d.ts +5 -3
- package/dist/components/Counter/Counter.js +16 -36
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomScrollView/CustomScrollView.d.ts +4 -4
- package/dist/components/CustomScrollView/CustomScrollView.js +137 -185
- package/dist/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +13 -17
- package/dist/components/CustomSelect/CustomSelect.js +17 -19
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -4
- package/dist/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.d.ts +3 -0
- package/dist/components/CustomSelectOption/CustomSelectOption.js +4 -0
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +3 -0
- package/dist/components/DateInput/DateInput.js +4 -0
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DatePicker/DatePicker.js +4 -0
- package/dist/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +3 -0
- package/dist/components/DateRangeInput/DateRangeInput.js +4 -0
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/Div/Div.d.ts +3 -0
- package/dist/components/Div/Div.js +5 -4
- package/dist/components/Div/Div.js.map +1 -1
- package/dist/components/Dropdown/Dropdown.d.ts +3 -0
- package/dist/components/Dropdown/Dropdown.js +4 -0
- package/dist/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/components/Epic/Epic.d.ts +3 -0
- package/dist/components/Epic/Epic.js +4 -0
- package/dist/components/Epic/Epic.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts +3 -0
- package/dist/components/Epic/ScrollSaver.js +4 -0
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/File/File.d.ts +8 -4
- package/dist/components/File/File.js +28 -36
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.d.ts +3 -0
- package/dist/components/FixedLayout/FixedLayout.js +3 -0
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FocusTrap/FocusTrap.d.ts +3 -0
- package/dist/components/FocusTrap/FocusTrap.js +4 -0
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/FocusVisible/FocusVisible.d.ts +3 -0
- package/dist/components/FocusVisible/FocusVisible.js +4 -0
- package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/components/Footer/Footer.d.ts +3 -0
- package/dist/components/Footer/Footer.js +4 -0
- package/dist/components/Footer/Footer.js.map +1 -1
- package/dist/components/FormField/FormField.d.ts +8 -0
- package/dist/components/FormField/FormField.js +13 -3
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.d.ts +3 -0
- package/dist/components/FormItem/FormItem.js +4 -0
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayout/FormLayout.d.ts +3 -0
- package/dist/components/FormLayout/FormLayout.js +3 -0
- package/dist/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -0
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +3 -0
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts +3 -0
- package/dist/components/FormStatus/FormStatus.js +6 -2
- package/dist/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/components/Gallery/Gallery.js +3 -0
- package/dist/components/Gallery/Gallery.js.map +1 -1
- package/dist/components/Gradient/Gradient.d.ts +3 -0
- package/dist/components/Gradient/Gradient.js +4 -0
- package/dist/components/Gradient/Gradient.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts +3 -0
- package/dist/components/GridAvatar/GridAvatar.js +4 -0
- package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/components/Group/Group.js +4 -1
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.d.ts +3 -0
- package/dist/components/Header/Header.js +24 -38
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.d.ts +3 -0
- package/dist/components/HorizontalCell/HorizontalCell.js +3 -0
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +3 -0
- package/dist/components/HorizontalScroll/HorizontalScroll.js +4 -0
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/IconButton/IconButton.js +3 -0
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/InfoRow/InfoRow.d.ts +4 -2
- package/dist/components/InfoRow/InfoRow.js +8 -11
- package/dist/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/components/InitialsAvatar/InitialsAvatar.d.ts +3 -0
- package/dist/components/InitialsAvatar/InitialsAvatar.js +4 -0
- package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/components/Input/Input.d.ts +4 -1
- package/dist/components/Input/Input.js +4 -0
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/Link/Link.d.ts +3 -0
- package/dist/components/Link/Link.js +3 -0
- package/dist/components/Link/Link.js.map +1 -1
- package/dist/components/List/List.d.ts +3 -0
- package/dist/components/List/List.js +3 -0
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/MiniInfoCell/MiniInfoCell.d.ts +3 -0
- package/dist/components/MiniInfoCell/MiniInfoCell.js +6 -2
- package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/components/ModalCard/ModalCard.js +3 -0
- package/dist/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/components/ModalCardBase/ModalCardBase.d.ts +4 -1
- package/dist/components/ModalCardBase/ModalCardBase.js +6 -3
- package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +3 -0
- package/dist/components/ModalDismissButton/ModalDismissButton.js +3 -0
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.js +3 -0
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.d.ts +4 -2
- package/dist/components/ModalPageHeader/ModalPageHeader.js +10 -15
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +3 -0
- package/dist/components/ModalRoot/ModalRootAdaptive.js +4 -0
- package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +6 -1
- package/dist/components/NativeSelect/NativeSelect.js +16 -19
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/NavTransitionContext/NavTransitionContext.d.ts +1 -2
- package/dist/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
- package/dist/components/Pagination/Pagination.d.ts +3 -0
- package/dist/components/Pagination/Pagination.js +3 -0
- package/dist/components/Pagination/Pagination.js.map +1 -1
- package/dist/components/Panel/Panel.d.ts +3 -0
- package/dist/components/Panel/Panel.js +4 -0
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +12 -2
- package/dist/components/PanelHeader/PanelHeader.js +61 -38
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +3 -0
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.d.ts +3 -0
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +6 -2
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts +3 -0
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +3 -0
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts +3 -0
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +8 -4
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.d.ts +3 -0
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +4 -0
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +3 -0
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -0
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +3 -0
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +3 -0
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/PanelSpinner/PanelSpinner.d.ts +4 -2
- package/dist/components/PanelSpinner/PanelSpinner.js +9 -10
- package/dist/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/components/Placeholder/Placeholder.d.ts +3 -0
- package/dist/components/Placeholder/Placeholder.js +5 -2
- package/dist/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.d.ts +3 -0
- package/dist/components/PopoutWrapper/PopoutWrapper.js +4 -0
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popper/Popper.d.ts +3 -0
- package/dist/components/Popper/Popper.js +4 -0
- package/dist/components/Popper/Popper.js.map +1 -1
- package/dist/components/Progress/Progress.d.ts +4 -2
- package/dist/components/Progress/Progress.js +7 -13
- package/dist/components/Progress/Progress.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.d.ts +3 -0
- package/dist/components/PromoBanner/PromoBanner.js +3 -0
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts +9 -24
- package/dist/components/PullToRefresh/PullToRefresh.js +210 -272
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefreshSpinner.d.ts +1 -2
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js +3 -10
- package/dist/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/components/Radio/Radio.d.ts +4 -2
- package/dist/components/Radio/Radio.js +39 -19
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/dist/components/RadioGroup/RadioGroup.js +5 -4
- package/dist/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/components/RangeSlider/RangeSlider.d.ts +3 -0
- package/dist/components/RangeSlider/RangeSlider.js +3 -0
- package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/components/Removable/Removable.d.ts +4 -1
- package/dist/components/Removable/Removable.js +6 -0
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/RichCell/RichCell.d.ts +10 -2
- package/dist/components/RichCell/RichCell.js +10 -8
- package/dist/components/RichCell/RichCell.js.map +1 -1
- package/dist/components/RichTooltip/RichTooltip.d.ts +3 -0
- package/dist/components/RichTooltip/RichTooltip.js +4 -0
- package/dist/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/components/Root/Root.d.ts +3 -0
- package/dist/components/Root/Root.js +3 -0
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.d.ts +3 -0
- package/dist/components/ScreenSpinner/ScreenSpinner.js +4 -1
- package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
- package/dist/components/Search/Search.js +8 -7
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/dist/components/SegmentedControl/SegmentedControl.js +10 -1
- package/dist/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -0
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +19 -9
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/Select/Select.d.ts +13 -1
- package/dist/components/Select/Select.js +56 -11
- package/dist/components/Select/Select.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +6 -5
- package/dist/components/SelectMimicry/SelectMimicry.js +21 -29
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/Separator/Separator.d.ts +7 -2
- package/dist/components/Separator/Separator.js +9 -18
- package/dist/components/Separator/Separator.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +8 -7
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/SimpleCheckbox/SimpleCheckbox.d.ts +3 -0
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js +4 -0
- package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/components/Slider/Slider.d.ts +3 -0
- package/dist/components/Slider/Slider.js +3 -0
- package/dist/components/Slider/Slider.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitch.d.ts +1 -0
- package/dist/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitchButton.js +2 -2
- package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/components/Snackbar/Snackbar.d.ts +3 -0
- package/dist/components/Snackbar/Snackbar.js +5 -2
- package/dist/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts +4 -0
- package/dist/components/Spacing/Spacing.js +8 -16
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/Spinner/Spinner.d.ts +5 -3
- package/dist/components/Spinner/Spinner.js +20 -30
- package/dist/components/Spinner/Spinner.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +3 -0
- package/dist/components/SplitCol/SplitCol.js +22 -6
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SplitLayout/SplitLayout.d.ts +3 -0
- package/dist/components/SplitLayout/SplitLayout.js +4 -0
- package/dist/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.d.ts +3 -0
- package/dist/components/SubnavigationBar/SubnavigationBar.js +4 -0
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.d.ts +3 -0
- package/dist/components/SubnavigationButton/SubnavigationButton.js +4 -0
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.d.ts +3 -0
- package/dist/components/Switch/Switch.js +5 -5
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.d.ts +3 -0
- package/dist/components/Tabbar/Tabbar.js +3 -0
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts +3 -0
- package/dist/components/TabbarItem/TabbarItem.js +4 -1
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tabs/Tabs.js +3 -0
- package/dist/components/Tabs/Tabs.js.map +1 -1
- package/dist/components/TabsItem/TabsItem.d.ts +3 -0
- package/dist/components/TabsItem/TabsItem.js +9 -6
- package/dist/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.js +29 -31
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/TextTooltip/TextTooltip.d.ts +3 -0
- package/dist/components/TextTooltip/TextTooltip.js +4 -0
- package/dist/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/components/Textarea/Textarea.js +4 -0
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/components/Tooltip/Tooltip.js +4 -0
- package/dist/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/Touch/Touch.d.ts +3 -0
- package/dist/components/Touch/Touch.js +4 -0
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.d.ts +3 -0
- package/dist/components/Typography/Caption/Caption.js +4 -0
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Footnote/Footnote.d.ts +14 -0
- package/dist/components/Typography/Footnote/Footnote.js +22 -0
- package/dist/components/Typography/Footnote/Footnote.js.map +1 -0
- package/dist/components/Typography/Headline/Headline.d.ts +11 -3
- package/dist/components/Typography/Headline/Headline.js +17 -8
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.d.ts +3 -0
- package/dist/components/Typography/Paragraph/Paragraph.js +4 -0
- package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.d.ts +3 -0
- package/dist/components/Typography/Subhead/Subhead.js +4 -0
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.d.ts +10 -3
- package/dist/components/Typography/Text/Text.js +16 -12
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts +3 -0
- package/dist/components/Typography/Title/Title.js +4 -0
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +3 -0
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.js +3 -0
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/WriteBar/WriteBar.d.ts +3 -0
- package/dist/components/WriteBar/WriteBar.js +4 -0
- package/dist/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.d.ts +3 -0
- package/dist/components/WriteBarIcon/WriteBarIcon.js +5 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +29 -11
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.d.ts +3 -0
- package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -0
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +3 -0
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +9 -6
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +3 -0
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +3 -0
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.css +1 -1
- package/dist/cssm/components/Alert/Alert.d.ts +9 -11
- package/dist/cssm/components/Alert/Alert.js +189 -254
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.d.ts +3 -0
- package/dist/cssm/components/AppRoot/AppRoot.js +10 -7
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.d.ts +13 -2
- package/dist/cssm/components/AppRoot/ScrollContext.js +181 -86
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.d.ts +3 -0
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js +4 -0
- package/dist/cssm/components/AppearanceProvider/AppearanceProvider.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.css +1 -1
- package/dist/cssm/components/Avatar/Avatar.d.ts +3 -0
- package/dist/cssm/components/Avatar/Avatar.js +3 -0
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Badge/Badge.css +3 -1
- package/dist/cssm/components/Badge/Badge.d.ts +4 -1
- package/dist/cssm/components/Badge/Badge.js +7 -8
- package/dist/cssm/components/Badge/Badge.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.d.ts +3 -0
- package/dist/cssm/components/Banner/Banner.js +10 -17
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Button/Button.css +2 -2
- package/dist/cssm/components/Button/Button.d.ts +3 -0
- package/dist/cssm/components/Button/Button.js +14 -8
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.css +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +3 -0
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js +4 -0
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/Calendar/Calendar.css +1 -1
- package/dist/cssm/components/Calendar/Calendar.d.ts +3 -0
- package/dist/cssm/components/Calendar/Calendar.js +4 -0
- package/dist/cssm/components/Calendar/Calendar.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.css +1 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.js +2 -3
- package/dist/cssm/components/CalendarDays/CalendarDays.js.map +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.css +1 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js +59 -58
- package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.css +1 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.d.ts +3 -0
- package/dist/cssm/components/CalendarRange/CalendarRange.js +4 -0
- package/dist/cssm/components/CalendarRange/CalendarRange.js.map +1 -1
- package/dist/cssm/components/Card/Card.css +1 -1
- package/dist/cssm/components/Card/Card.d.ts +3 -0
- package/dist/cssm/components/Card/Card.js +4 -0
- package/dist/cssm/components/Card/Card.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.js +3 -0
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.d.ts +3 -0
- package/dist/cssm/components/CardScroll/CardScroll.js +4 -0
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.d.ts +5 -2
- package/dist/cssm/components/Cell/Cell.js +9 -3
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/Cell/useDraggable.d.ts +4 -2
- package/dist/cssm/components/Cell/useDraggable.js +3 -5
- package/dist/cssm/components/Cell/useDraggable.js.map +1 -1
- package/dist/cssm/components/CellButton/CellButton.d.ts +3 -0
- package/dist/cssm/components/CellButton/CellButton.js +3 -0
- package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.d.ts +3 -0
- package/dist/cssm/components/Checkbox/Checkbox.js +8 -5
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Chip/Chip.css +1 -1
- package/dist/cssm/components/Chip/Chip.d.ts +3 -0
- package/dist/cssm/components/Chip/Chip.js +10 -4
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +3 -0
- package/dist/cssm/components/ChipsInput/ChipsInput.js +4 -0
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +5 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ConfigProvider/ConfigProvider.d.ts +3 -0
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js +4 -0
- package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
- package/dist/cssm/components/ContentCard/ContentCard.d.ts +3 -0
- package/dist/cssm/components/ContentCard/ContentCard.js +5 -3
- package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.css +10 -2
- package/dist/cssm/components/Counter/Counter.d.ts +5 -3
- package/dist/cssm/components/Counter/Counter.js +16 -36
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.css +1 -1
- package/dist/cssm/components/CustomScrollView/CustomScrollView.d.ts +4 -4
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js +137 -185
- package/dist/cssm/components/CustomScrollView/CustomScrollView.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +13 -17
- package/dist/cssm/components/CustomSelect/CustomSelect.js +17 -19
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.css +2 -2
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js +4 -4
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.d.ts +3 -0
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +4 -0
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.css +1 -1
- package/dist/cssm/components/DateInput/DateInput.d.ts +3 -0
- package/dist/cssm/components/DateInput/DateInput.js +4 -0
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DatePicker/DatePicker.js +4 -0
- package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +3 -0
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -0
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/Div/Div.css +1 -1
- package/dist/cssm/components/Div/Div.d.ts +3 -0
- package/dist/cssm/components/Div/Div.js +5 -4
- package/dist/cssm/components/Div/Div.js.map +1 -1
- package/dist/cssm/components/Dropdown/Dropdown.d.ts +3 -0
- package/dist/cssm/components/Dropdown/Dropdown.js +4 -0
- package/dist/cssm/components/Dropdown/Dropdown.js.map +1 -1
- package/dist/cssm/components/Epic/Epic.d.ts +3 -0
- package/dist/cssm/components/Epic/Epic.js +4 -0
- package/dist/cssm/components/Epic/Epic.js.map +1 -1
- package/dist/cssm/components/Epic/ScrollSaver.d.ts +3 -0
- package/dist/cssm/components/Epic/ScrollSaver.js +4 -0
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/File/File.d.ts +8 -4
- package/dist/cssm/components/File/File.js +28 -37
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.d.ts +3 -0
- package/dist/cssm/components/FixedLayout/FixedLayout.js +3 -0
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FocusTrap/FocusTrap.d.ts +3 -0
- package/dist/cssm/components/FocusTrap/FocusTrap.js +4 -0
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.d.ts +3 -0
- package/dist/cssm/components/FocusVisible/FocusVisible.js +4 -0
- package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cssm/components/Footer/Footer.css +1 -1
- package/dist/cssm/components/Footer/Footer.d.ts +3 -0
- package/dist/cssm/components/Footer/Footer.js +4 -0
- package/dist/cssm/components/Footer/Footer.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.css +7 -3
- package/dist/cssm/components/FormField/FormField.d.ts +8 -0
- package/dist/cssm/components/FormField/FormField.js +13 -3
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.d.ts +3 -0
- package/dist/cssm/components/FormItem/FormItem.js +4 -0
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormLayout/FormLayout.d.ts +3 -0
- package/dist/cssm/components/FormLayout/FormLayout.js +3 -0
- package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -0
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +3 -0
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.css +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.d.ts +3 -0
- package/dist/cssm/components/FormStatus/FormStatus.js +6 -2
- package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cssm/components/Gallery/Gallery.js +3 -0
- package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
- package/dist/cssm/components/Gradient/Gradient.d.ts +3 -0
- package/dist/cssm/components/Gradient/Gradient.js +4 -0
- package/dist/cssm/components/Gradient/Gradient.js.map +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +3 -0
- package/dist/cssm/components/GridAvatar/GridAvatar.js +4 -0
- package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
- package/dist/cssm/components/Group/Group.js +4 -1
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Header/Header.d.ts +3 -0
- package/dist/cssm/components/Header/Header.js +24 -38
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.d.ts +3 -0
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js +3 -0
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +3 -0
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +4 -0
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +1 -1
- package/dist/cssm/components/IconButton/IconButton.js +3 -0
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.css +1 -1
- package/dist/cssm/components/InfoRow/InfoRow.d.ts +4 -2
- package/dist/cssm/components/InfoRow/InfoRow.js +8 -11
- package/dist/cssm/components/InfoRow/InfoRow.js.map +1 -1
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.d.ts +3 -0
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +4 -0
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
- package/dist/cssm/components/Input/Input.css +1 -1
- package/dist/cssm/components/Input/Input.d.ts +4 -1
- package/dist/cssm/components/Input/Input.js +4 -0
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/Link/Link.d.ts +3 -0
- package/dist/cssm/components/Link/Link.js +3 -0
- package/dist/cssm/components/Link/Link.js.map +1 -1
- package/dist/cssm/components/List/List.d.ts +3 -0
- package/dist/cssm/components/List/List.js +3 -0
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.d.ts +3 -0
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +6 -2
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.d.ts +1 -1
- package/dist/cssm/components/ModalCard/ModalCard.js +3 -0
- package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.d.ts +4 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js +6 -3
- package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.d.ts +3 -0
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +3 -0
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +3 -0
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.d.ts +4 -2
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +10 -15
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.css +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +3 -0
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js +4 -0
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +6 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.js +16 -19
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/NavTransitionContext/NavTransitionContext.d.ts +1 -2
- package/dist/cssm/components/NavTransitionContext/NavTransitionContext.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.css +1 -1
- package/dist/cssm/components/Pagination/Pagination.d.ts +3 -0
- package/dist/cssm/components/Pagination/Pagination.js +3 -0
- package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.css +1 -1
- package/dist/cssm/components/Panel/Panel.d.ts +3 -0
- package/dist/cssm/components/Panel/Panel.js +4 -0
- 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.d.ts +12 -2
- package/dist/cssm/components/PanelHeader/PanelHeader.js +61 -38
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +3 -0
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +6 -2
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +3 -0
- 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.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +8 -4
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +4 -0
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +3 -0
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +3 -0
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +3 -0
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/PanelSpinner/PanelSpinner.d.ts +4 -2
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js +9 -10
- package/dist/cssm/components/PanelSpinner/PanelSpinner.js.map +1 -1
- package/dist/cssm/components/Placeholder/Placeholder.d.ts +3 -0
- package/dist/cssm/components/Placeholder/Placeholder.js +5 -2
- package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.d.ts +3 -0
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +4 -0
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/Popper/Popper.d.ts +3 -0
- package/dist/cssm/components/Popper/Popper.js +4 -0
- package/dist/cssm/components/Popper/Popper.js.map +1 -1
- package/dist/cssm/components/Progress/Progress.css +1 -1
- package/dist/cssm/components/Progress/Progress.d.ts +4 -2
- package/dist/cssm/components/Progress/Progress.js +7 -13
- package/dist/cssm/components/Progress/Progress.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.d.ts +3 -0
- package/dist/cssm/components/PromoBanner/PromoBanner.js +3 -0
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.css +3 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +9 -24
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js +210 -273
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.d.ts +1 -2
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js +3 -10
- package/dist/cssm/components/PullToRefresh/PullToRefreshSpinner.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.css +1 -1
- package/dist/cssm/components/Radio/Radio.d.ts +4 -2
- package/dist/cssm/components/Radio/Radio.js +39 -19
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.d.ts +3 -0
- package/dist/cssm/components/RadioGroup/RadioGroup.js +5 -4
- package/dist/cssm/components/RadioGroup/RadioGroup.js.map +1 -1
- package/dist/cssm/components/RangeSlider/RangeSlider.d.ts +3 -0
- package/dist/cssm/components/RangeSlider/RangeSlider.js +3 -0
- package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.css +1 -1
- package/dist/cssm/components/Removable/Removable.d.ts +4 -1
- package/dist/cssm/components/Removable/Removable.js +6 -0
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/RichCell/RichCell.css +1 -1
- package/dist/cssm/components/RichCell/RichCell.d.ts +10 -2
- package/dist/cssm/components/RichCell/RichCell.js +10 -8
- package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.d.ts +3 -0
- package/dist/cssm/components/RichTooltip/RichTooltip.js +4 -0
- package/dist/cssm/components/RichTooltip/RichTooltip.js.map +1 -1
- package/dist/cssm/components/Root/Root.d.ts +3 -0
- package/dist/cssm/components/Root/Root.js +3 -0
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.d.ts +3 -0
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +4 -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 +8 -7
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.css +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.d.ts +3 -0
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js +10 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +3 -0
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +19 -9
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/Select/Select.css +1 -1
- package/dist/cssm/components/Select/Select.d.ts +13 -1
- package/dist/cssm/components/Select/Select.js +56 -11
- package/dist/cssm/components/Select/Select.js.map +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +6 -5
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +21 -30
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/Separator/Separator.css +1 -1
- package/dist/cssm/components/Separator/Separator.d.ts +7 -2
- package/dist/cssm/components/Separator/Separator.js +9 -18
- package/dist/cssm/components/Separator/Separator.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +8 -7
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.d.ts +3 -0
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +4 -0
- package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
- package/dist/cssm/components/Slider/Slider.d.ts +3 -0
- package/dist/cssm/components/Slider/Slider.js +3 -0
- package/dist/cssm/components/Slider/Slider.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitch.d.ts +1 -0
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -0
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +2 -2
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cssm/components/Snackbar/Snackbar.d.ts +3 -0
- package/dist/cssm/components/Snackbar/Snackbar.js +5 -2
- package/dist/cssm/components/Snackbar/Snackbar.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.css +1 -1
- package/dist/cssm/components/Spacing/Spacing.d.ts +4 -0
- package/dist/cssm/components/Spacing/Spacing.js +8 -16
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/Spinner/Spinner.css +1 -1
- package/dist/cssm/components/Spinner/Spinner.d.ts +5 -3
- package/dist/cssm/components/Spinner/Spinner.js +20 -30
- package/dist/cssm/components/Spinner/Spinner.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.css +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.d.ts +3 -0
- package/dist/cssm/components/SplitCol/SplitCol.js +22 -6
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.css +1 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.d.ts +3 -0
- package/dist/cssm/components/SplitLayout/SplitLayout.js +4 -0
- package/dist/cssm/components/SplitLayout/SplitLayout.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.d.ts +3 -0
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +4 -0
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.d.ts +3 -0
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +4 -0
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.css +3 -1
- package/dist/cssm/components/Switch/Switch.d.ts +3 -0
- package/dist/cssm/components/Switch/Switch.js +5 -5
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.d.ts +3 -0
- package/dist/cssm/components/Tabbar/Tabbar.js +3 -0
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +3 -0
- package/dist/cssm/components/TabbarItem/TabbarItem.js +4 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tabs/Tabs.css +1 -1
- package/dist/cssm/components/Tabs/Tabs.js +3 -0
- package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.d.ts +3 -0
- package/dist/cssm/components/TabsItem/TabsItem.js +9 -6
- package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +29 -31
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.d.ts +3 -0
- package/dist/cssm/components/TextTooltip/TextTooltip.js +4 -0
- package/dist/cssm/components/TextTooltip/TextTooltip.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.css +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +4 -0
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Tooltip/Tooltip.d.ts +3 -0
- package/dist/cssm/components/Tooltip/Tooltip.js +4 -0
- package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.d.ts +3 -0
- package/dist/cssm/components/Touch/Touch.js +4 -0
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.css +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.d.ts +3 -0
- package/dist/cssm/components/Typography/Caption/Caption.js +4 -0
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.css +1 -0
- package/dist/cssm/components/Typography/Footnote/Footnote.d.ts +14 -0
- package/dist/cssm/components/Typography/Footnote/Footnote.js +23 -0
- package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -0
- package/dist/cssm/components/Typography/Headline/Headline.css +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.d.ts +11 -3
- package/dist/cssm/components/Typography/Headline/Headline.js +17 -8
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.css +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.d.ts +3 -0
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js +4 -0
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.css +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.d.ts +3 -0
- package/dist/cssm/components/Typography/Subhead/Subhead.js +4 -0
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.css +1 -1
- package/dist/cssm/components/Typography/Text/Text.d.ts +10 -3
- package/dist/cssm/components/Typography/Text/Text.js +16 -12
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.css +1 -1
- package/dist/cssm/components/Typography/Title/Title.d.ts +3 -0
- package/dist/cssm/components/Typography/Title/Title.js +4 -0
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +3 -0
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/View/View.css +1 -1
- package/dist/cssm/components/View/View.js +3 -0
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.css +1 -1
- package/dist/cssm/components/WriteBar/WriteBar.d.ts +3 -0
- package/dist/cssm/components/WriteBar/WriteBar.js +4 -0
- package/dist/cssm/components/WriteBar/WriteBar.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.d.ts +3 -0
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +5 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/hooks/useKeyboard.d.ts +0 -1
- package/dist/cssm/hooks/useKeyboard.js +2 -20
- package/dist/cssm/hooks/useKeyboard.js.map +1 -1
- package/dist/cssm/hooks/usePrevious.d.ts +1 -0
- package/dist/cssm/hooks/usePrevious.js +9 -0
- package/dist/cssm/hooks/usePrevious.js.map +1 -0
- package/dist/cssm/hooks/useWaitTransitionFinish.js +2 -3
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/index.d.ts +22 -18
- package/dist/cssm/index.js +18 -16
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/SSR.d.ts +3 -0
- package/dist/cssm/lib/SSR.js +4 -0
- package/dist/cssm/lib/SSR.js.map +1 -1
- package/dist/cssm/lib/select.d.ts +3 -1
- package/dist/cssm/lib/select.js +14 -5
- package/dist/cssm/lib/select.js.map +1 -1
- package/dist/cssm/styles/common.css +1 -1
- package/dist/cssm/styles/components.css +29 -11
- package/dist/cssm/styles/constants.css +1 -1
- package/dist/cssm/styles/themes.css +4 -4
- package/dist/cssm/styles/unstable.css +1 -1
- package/dist/cssm/tokenized/index.d.ts +40 -0
- package/dist/cssm/tokenized/index.js +20 -0
- package/dist/cssm/tokenized/index.js.map +1 -1
- package/dist/default_scheme.css.map +1 -1
- package/dist/hooks/useKeyboard.d.ts +0 -1
- package/dist/hooks/useKeyboard.js +2 -20
- package/dist/hooks/useKeyboard.js.map +1 -1
- package/dist/hooks/usePrevious.d.ts +1 -0
- package/dist/hooks/usePrevious.js +9 -0
- package/dist/hooks/usePrevious.js.map +1 -0
- package/dist/hooks/useWaitTransitionFinish.js +2 -3
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/index.d.ts +22 -18
- package/dist/index.js +18 -16
- package/dist/index.js.map +1 -1
- package/dist/lib/SSR.d.ts +3 -0
- package/dist/lib/SSR.js +4 -0
- package/dist/lib/SSR.js.map +1 -1
- package/dist/lib/select.d.ts +3 -1
- package/dist/lib/select.js +14 -5
- package/dist/lib/select.js.map +1 -1
- package/dist/tokenized/index.d.ts +40 -0
- package/dist/tokenized/index.js +20 -0
- package/dist/tokenized/index.js.map +1 -1
- package/dist/unstable.css +1 -1
- package/dist/unstable.css.map +1 -1
- package/dist/vkui.css +33 -15
- package/dist/vkui.css.map +1 -1
- package/jest.unit.config.js +1 -0
- package/package.json +27 -5
- package/src/components/ActionSheet/ActionSheet.tsx +3 -0
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +9 -8
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +3 -0
- package/src/components/Alert/Alert.tsx +197 -254
- package/src/components/AppRoot/AppRoot.tsx +12 -12
- package/src/components/AppRoot/ScrollContext.tsx +261 -0
- package/src/components/AppearanceProvider/AppearanceProvider.tsx +3 -0
- package/src/components/Avatar/Avatar.css +2 -2
- package/src/components/Avatar/Avatar.tsx +3 -0
- package/src/components/Badge/Badge.css +5 -2
- package/src/components/Badge/Badge.tsx +6 -19
- package/src/components/Banner/Banner.tsx +11 -25
- package/src/components/Button/Button.css +160 -29
- package/src/components/Button/Button.tsx +19 -8
- package/src/components/Button/Readme.md +5 -5
- package/src/components/ButtonGroup/ButtonGroup.css +15 -3
- package/src/components/ButtonGroup/ButtonGroup.tsx +3 -0
- package/src/components/Calendar/Calendar.tsx +3 -0
- package/src/components/CalendarDays/CalendarDays.tsx +1 -6
- package/src/components/CalendarHeader/CalendarHeader.css +3 -16
- package/src/components/CalendarHeader/CalendarHeader.tsx +81 -93
- package/src/components/CalendarRange/CalendarRange.tsx +3 -0
- package/src/components/Card/Card.tsx +3 -0
- package/src/components/CardGrid/CardGrid.tsx +3 -0
- package/src/components/CardGrid/Readme.md +1 -1
- package/src/components/CardScroll/CardScroll.tsx +3 -0
- package/src/components/Cell/Cell.tsx +14 -5
- package/src/components/Cell/useDraggable.tsx +5 -5
- package/src/components/CellButton/CellButton.tsx +3 -0
- package/src/components/Checkbox/Checkbox.tsx +8 -9
- package/src/components/Chip/Chip.css +12 -6
- package/src/components/Chip/Chip.tsx +10 -2
- package/src/components/ChipsInput/ChipsInput.tsx +3 -0
- package/src/components/ChipsSelect/ChipsSelect.css +0 -14
- package/src/components/ChipsSelect/ChipsSelect.tsx +6 -2
- package/src/components/ConfigProvider/ConfigProvider.tsx +3 -0
- package/src/components/ContentCard/ContentCard.tsx +6 -4
- package/src/components/Counter/Counter.css +25 -19
- package/src/components/Counter/Counter.tsx +14 -43
- package/src/components/CustomScrollView/CustomScrollView.css +12 -0
- package/src/components/CustomScrollView/CustomScrollView.tsx +132 -125
- package/src/components/CustomSelect/CustomSelect.css +2 -5
- package/src/components/CustomSelect/CustomSelect.tsx +38 -37
- package/src/components/CustomSelect/Readme.md +237 -228
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.css +19 -16
- package/src/components/CustomSelectDropdown/CustomSelectDropdown.tsx +9 -7
- package/src/components/CustomSelectOption/CustomSelectOption.tsx +3 -0
- package/src/components/DateInput/DateInput.tsx +3 -0
- package/src/components/DatePicker/DatePicker.tsx +3 -0
- package/src/components/DateRangeInput/DateRangeInput.tsx +3 -0
- package/src/components/Div/Div.css +2 -5
- package/src/components/Div/Div.tsx +4 -8
- package/src/components/Dropdown/Dropdown.tsx +3 -0
- package/src/components/Epic/Epic.tsx +3 -0
- package/src/components/Epic/Readme.md +7 -5
- package/src/components/Epic/ScrollSaver.tsx +3 -0
- package/src/components/File/File.tsx +30 -39
- package/src/components/File/Readme.md +7 -4
- package/src/components/FixedLayout/FixedLayout.css +13 -0
- package/src/components/FixedLayout/FixedLayout.tsx +3 -0
- package/src/components/FocusTrap/FocusTrap.tsx +3 -0
- package/src/components/FocusVisible/FocusVisible.tsx +3 -0
- package/src/components/Footer/Footer.css +1 -1
- package/src/components/Footer/Footer.tsx +3 -0
- package/src/components/FormField/FormField.css +38 -31
- package/src/components/FormField/FormField.tsx +14 -8
- package/src/components/FormItem/FormItem.tsx +3 -0
- package/src/components/FormLayout/FormLayout.tsx +3 -0
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +3 -0
- package/src/components/FormStatus/FormStatus.tsx +5 -2
- package/src/components/Gallery/Gallery.tsx +3 -0
- package/src/components/Gradient/Gradient.tsx +3 -0
- package/src/components/GridAvatar/GridAvatar.tsx +4 -0
- package/src/components/Group/Group.tsx +4 -1
- package/src/components/Group/Readme.md +2 -2
- package/src/components/Header/Header.tsx +14 -43
- package/src/components/HorizontalCell/HorizontalCell.tsx +3 -0
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +3 -0
- package/src/components/IconButton/IconButton.tsx +4 -0
- package/src/components/InfoRow/InfoRow.css +1 -1
- package/src/components/InfoRow/InfoRow.tsx +15 -25
- package/src/components/InitialsAvatar/InitialsAvatar.tsx +3 -0
- package/src/components/Input/Input.tsx +3 -0
- package/src/components/Link/Link.tsx +3 -0
- package/src/components/List/List.tsx +3 -0
- package/src/components/MiniInfoCell/MiniInfoCell.tsx +5 -2
- package/src/components/MiniInfoCell/Readme.md +2 -2
- package/src/components/ModalCard/ModalCard.tsx +3 -0
- package/src/components/ModalCardBase/ModalCardBase.tsx +5 -4
- package/src/components/ModalDismissButton/ModalDismissButton.tsx +3 -0
- package/src/components/ModalPage/ModalPage.tsx +4 -0
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +12 -16
- package/src/components/ModalPageHeader/Readme.md +3 -3
- package/src/components/ModalRoot/ModalRoot.css +1 -1
- package/src/components/ModalRoot/ModalRootAdaptive.tsx +3 -0
- package/src/components/ModalRoot/Readme.md +17 -17
- package/src/components/NativeSelect/NativeSelect.tsx +22 -24
- package/src/components/NavTransitionContext/NavTransitionContext.tsx +2 -1
- package/src/components/Pagination/Pagination.tsx +3 -0
- package/src/components/Panel/Panel.css +3 -3
- package/src/components/Panel/Panel.tsx +3 -0
- package/src/components/Panel/Readme.md +2 -2
- package/src/components/PanelHeader/PanelHeader.css +36 -68
- package/src/components/PanelHeader/PanelHeader.tsx +69 -40
- package/src/components/PanelHeader/Readme.md +11 -11
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +3 -0
- package/src/components/PanelHeaderBack/Readme.md +1 -1
- package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -4
- package/src/components/PanelHeaderButton/Readme.md +3 -3
- package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +3 -0
- package/src/components/PanelHeaderClose/Readme.md +1 -1
- package/src/components/PanelHeaderContent/PanelHeaderContent.css +1 -1
- package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +7 -4
- package/src/components/PanelHeaderContent/Readme.md +2 -2
- package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +3 -0
- package/src/components/PanelHeaderContext/Readme.md +2 -2
- package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +3 -0
- package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +3 -0
- package/src/components/PanelHeaderSubmit/Readme.md +1 -1
- package/src/components/PanelSpinner/PanelSpinner.tsx +10 -14
- package/src/components/PanelSpinner/Readme.md +1 -1
- package/src/components/Placeholder/Placeholder.tsx +5 -2
- package/src/components/Placeholder/Readme.md +2 -2
- package/src/components/PopoutWrapper/PopoutWrapper.tsx +3 -0
- package/src/components/Popper/Popper.tsx +3 -0
- package/src/components/Progress/Progress.css +2 -2
- package/src/components/Progress/Progress.tsx +6 -11
- package/src/components/Progress/Readme.md +11 -13
- package/src/components/PromoBanner/PromoBanner.tsx +4 -0
- package/src/components/PullToRefresh/PullToRefresh.css +11 -9
- package/src/components/PullToRefresh/PullToRefresh.tsx +210 -281
- package/src/components/PullToRefresh/PullToRefreshSpinner.tsx +5 -10
- package/src/components/PullToRefresh/Readme.md +37 -56
- package/src/components/Radio/Radio.css +12 -98
- package/src/components/Radio/Radio.tsx +42 -22
- package/src/components/RadioGroup/RadioGroup.tsx +11 -17
- package/src/components/RangeSlider/RangeSlider.tsx +3 -0
- package/src/components/Removable/Removable.tsx +7 -1
- package/src/components/RichCell/Readme.md +14 -6
- package/src/components/RichCell/RichCell.css +1 -9
- package/src/components/RichCell/RichCell.tsx +22 -15
- package/src/components/RichTooltip/Readme.md +1 -1
- package/src/components/RichTooltip/RichTooltip.tsx +3 -0
- package/src/components/Root/Root.tsx +4 -0
- package/src/components/ScreenSpinner/ScreenSpinner.tsx +4 -1
- package/src/components/Search/Readme.md +4 -4
- package/src/components/Search/Search.tsx +8 -9
- package/src/components/SegmentedControl/SegmentedControl.css +14 -2
- package/src/components/SegmentedControl/SegmentedControl.tsx +12 -1
- package/src/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.tsx +27 -9
- package/src/components/Select/Select.css +12 -8
- package/src/components/Select/Select.tsx +47 -0
- package/src/components/SelectMimicry/SelectMimicry.tsx +26 -44
- package/src/components/Separator/Readme.md +3 -5
- package/src/components/Separator/Separator.css +4 -12
- package/src/components/Separator/Separator.tsx +25 -26
- package/src/components/SimpleCell/Readme.md +1 -1
- package/src/components/SimpleCell/SimpleCell.tsx +7 -4
- package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +3 -0
- package/src/components/Slider/Slider.tsx +3 -0
- package/src/components/SliderSwitch/SliderSwitch.tsx +2 -0
- package/src/components/SliderSwitch/SliderSwitchButton.tsx +2 -2
- package/src/components/Snackbar/Snackbar.tsx +5 -4
- package/src/components/Spacing/Readme.md +14 -6
- package/src/components/Spacing/Spacing.css +6 -11
- package/src/components/Spacing/Spacing.tsx +13 -16
- package/src/components/Spinner/Spinner.css +1 -1
- package/src/components/Spinner/Spinner.tsx +29 -39
- package/src/components/SplitCol/SplitCol.css +1 -1
- package/src/components/SplitCol/SplitCol.tsx +28 -6
- package/src/components/SplitLayout/Readme.md +3 -3
- package/src/components/SplitLayout/SplitLayout.css +2 -2
- package/src/components/SplitLayout/SplitLayout.tsx +3 -0
- package/src/components/SubnavigationBar/Readme.md +5 -3
- package/src/components/SubnavigationBar/SubnavigationBar.tsx +3 -0
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +3 -0
- package/src/components/Switch/Switch.css +111 -121
- package/src/components/Switch/Switch.tsx +5 -5
- package/src/components/Tabbar/Tabbar.tsx +3 -0
- package/src/components/TabbarItem/TabbarItem.tsx +5 -1
- package/src/components/Tabs/Readme.md +6 -6
- package/src/components/Tabs/Tabs.tsx +3 -0
- package/src/components/TabsItem/TabsItem.tsx +9 -10
- package/src/components/Tappable/Tappable.tsx +38 -26
- package/src/components/TextTooltip/TextTooltip.tsx +3 -0
- package/src/components/Textarea/Textarea.tsx +3 -0
- package/src/components/Tooltip/Readme.md +2 -2
- package/src/components/Tooltip/Tooltip.tsx +3 -0
- package/src/components/Touch/Touch.tsx +3 -0
- package/src/components/Typography/Caption/Caption.tsx +3 -0
- package/src/components/Typography/Footnote/Footnote.css +26 -0
- package/src/components/Typography/Footnote/Footnote.tsx +38 -0
- package/src/components/Typography/Footnote/Readme.md +18 -0
- package/src/components/Typography/Headline/Headline.css +39 -2
- package/src/components/Typography/Headline/Headline.tsx +19 -8
- package/src/components/Typography/Headline/Readme.md +23 -21
- package/src/components/Typography/Paragraph/Paragraph.tsx +4 -0
- package/src/components/Typography/Subhead/Subhead.tsx +4 -0
- package/src/components/Typography/Text/Readme.md +16 -19
- package/src/components/Typography/Text/Text.css +22 -7
- package/src/components/Typography/Text/Text.tsx +28 -12
- package/src/components/Typography/Title/Title.tsx +4 -0
- package/src/components/UsersStack/UsersStack.tsx +3 -0
- package/src/components/View/View.tsx +4 -0
- package/src/components/WriteBar/WriteBar.tsx +3 -0
- package/src/components/WriteBarIcon/WriteBarIcon.tsx +4 -1
- package/src/hooks/useKeyboard.ts +3 -20
- package/src/hooks/usePrevious.ts +11 -0
- package/src/hooks/useWaitTransitionFinish.ts +22 -19
- package/src/index.ts +22 -18
- package/src/lib/SSR.tsx +3 -0
- package/src/lib/select.ts +20 -4
- package/src/styles/components.css +3 -4
- package/src/styles/constants.css +1 -3
- package/src/styles/themes.css +1 -0
- package/src/testing/utils.tsx +8 -1
- package/src/tokenized/index.ts +60 -0
- package/tasks/postcss-restructure-variable.js +226 -0
- package/tasks/postcss-scope-root.js +5 -1
- package/dist/cssm/components/File/File.css +0 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.css +0 -1
- package/src/components/AppRoot/ScrollContext.ts +0 -132
- package/src/components/File/File.css +0 -6
- package/src/components/SelectMimicry/SelectMimicry.css +0 -10
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/Alert/Alert.tsx"],"names":["React","Tappable","PopoutWrapper","getClassName","classNames","transitionEvent","ANDROID","VKCOM","IOS","withPlatform","withAdaptivity","ViewWidth","Button","hasReactNode","Headline","Title","Caption","ModalDismissButton","FocusTrap","withContext","ScrollContext","AlertComponent","props","undefined","item","action","autoclose","setState","closing","waitTransitionFinish","e","propertyName","onClose","stopPropagation","i","platform","Component","href","mode","onItemClick","target","title","viewWidth","DESKTOP","element","createRef","state","scroll","enableScrollLock","disableScrollLock","eventHandler","supported","current","removeEventListener","name","addEventListener","transitionFinishTimeout","clearTimeout","setTimeout","bind","timeout","header","text","actions","actionsLayout","children","className","style","restProps","resolvedActionsLayout","canShowCloseButton","SMALL_TABLET","isDesktop","renderHeader","renderText","map","renderAction","Alert"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent } from \"../../lib/supportEvents\";\nimport { ANDROID, VKCOM, IOS } from \"../../lib/platform\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withAdaptivity, ViewWidth } from \"../../hoc/withAdaptivity\";\nimport { Button, ButtonProps } from \"../Button/Button\";\nimport { hasReactNode } from \"../../lib/utils\";\nimport Headline from \"../Typography/Headline/Headline\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport ModalDismissButton from \"../ModalDismissButton/ModalDismissButton\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport {\n AdaptivityContextInterface,\n AdaptivityProps,\n} from \"../AdaptivityProvider/AdaptivityContext\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport \"./Alert.css\";\n\nexport type AlertActionInterface = AlertAction &\n React.AnchorHTMLAttributes<HTMLElement>;\n\nexport interface AlertAction extends Pick<ButtonProps, \"Component\" | \"href\"> {\n title: string;\n action?: VoidFunction;\n autoclose?: boolean;\n mode: \"cancel\" | \"destructive\" | \"default\";\n}\n\nexport interface AlertProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n AdaptivityProps {\n actionsLayout?: \"vertical\" | \"horizontal\";\n actions?: AlertAction[];\n header?: React.ReactNode;\n text?: React.ReactNode;\n onClose?: VoidFunction;\n /** @ignore */\n scroll?: ScrollContextInterface;\n}\n\nexport type TAlertProps = AlertProps & AdaptivityContextInterface;\n\nexport interface AlertState {\n closing: boolean;\n}\n\ntype TransitionEndHandler = (e?: TransitionEvent) => void;\n\ntype ItemClickHandler = (item: AlertActionInterface) => () => void;\n\nclass AlertComponent extends React.Component<TAlertProps, AlertState> {\n constructor(props: TAlertProps) {\n super(props);\n this.element = React.createRef();\n this.state = {\n closing: false,\n };\n }\n\n componentDidMount() {\n this.props.scroll?.enableScrollLock();\n }\n\n componentWillUnmount() {\n this.props.scroll?.disableScrollLock();\n }\n\n element: React.RefObject<HTMLDivElement>;\n\n private transitionFinishTimeout: number | undefined = undefined;\n\n static defaultProps: Partial<TAlertProps> = {\n actionsLayout: \"horizontal\",\n actions: [],\n };\n\n private get timeout(): number {\n return this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 200\n : 300;\n }\n\n onItemClick: ItemClickHandler = (item: AlertActionInterface) => () => {\n const { action, autoclose } = item;\n\n if (autoclose) {\n this.setState({ closing: true });\n this.waitTransitionFinish((e?: TransitionEvent) => {\n if (!e || e.propertyName === \"opacity\") {\n autoclose && this.props.onClose?.();\n action && action();\n }\n });\n } else {\n action && action();\n }\n };\n\n onClose: VoidFunction = () => {\n this.setState({ closing: true });\n this.waitTransitionFinish((e?: TransitionEvent) => {\n if (!e || e.propertyName === \"opacity\") {\n this.props.onClose?.();\n }\n });\n };\n\n stopPropagation: React.MouseEventHandler = (e: React.SyntheticEvent) => {\n e.stopPropagation();\n };\n\n waitTransitionFinish(eventHandler: TransitionEndHandler) {\n if (transitionEvent.supported && this.element.current) {\n this.element.current.removeEventListener(\n transitionEvent.name as string,\n eventHandler as () => void\n );\n this.element.current.addEventListener(\n transitionEvent.name as string,\n eventHandler as () => void\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n this.transitionFinishTimeout = setTimeout(\n eventHandler.bind(this),\n this.timeout\n );\n }\n }\n\n renderHeader(header: React.ReactNode) {\n switch (this.props.platform) {\n case VKCOM:\n return (\n <Headline vkuiClass=\"Alert__header\" weight=\"medium\">\n {header}\n </Headline>\n );\n case IOS:\n return (\n <Title vkuiClass=\"Alert__header\" weight=\"1\" level=\"3\">\n {header}\n </Title>\n );\n case ANDROID:\n return (\n <Title vkuiClass=\"Alert__header\" weight=\"2\" level=\"2\">\n {header}\n </Title>\n );\n default:\n return undefined;\n }\n }\n\n renderText(text: React.ReactNode) {\n switch (this.props.platform) {\n case VKCOM:\n return <Caption vkuiClass=\"Alert__text\">{text}</Caption>;\n case IOS:\n return (\n <Caption vkuiClass=\"Alert__text\" level=\"2\">\n {text}\n </Caption>\n );\n case ANDROID:\n return (\n <Headline vkuiClass=\"Alert__text\" weight=\"regular\">\n {text}\n </Headline>\n );\n default:\n return undefined;\n }\n }\n\n renderAction = (action: AlertActionInterface, i: number) => {\n const { platform } = this.props;\n\n if (platform === IOS) {\n const { Component = \"button\" } = action;\n return (\n <Tappable\n Component={action.href ? \"a\" : Component}\n vkuiClass={classNames(\n \"Alert__action\",\n `Alert__action--${action.mode}`\n )}\n onClick={this.onItemClick(action)}\n href={action.href}\n key={`alert-action-${i}`}\n target={action.target}\n >\n {action.title}\n </Tappable>\n );\n }\n\n let mode: ButtonProps[\"mode\"] =\n action.mode === \"cancel\" ? \"secondary\" : \"primary\";\n\n if (platform === ANDROID) {\n mode = \"tertiary\";\n\n if (\n this.props.viewWidth === ViewWidth.DESKTOP &&\n action.mode === \"destructive\"\n ) {\n mode = \"destructive\";\n }\n }\n\n return (\n <Button\n vkuiClass={classNames(\"Alert__button\", `Alert__button--${action.mode}`)}\n mode={mode}\n size=\"m\"\n onClick={this.onItemClick(action)}\n Component={action.Component}\n href={action.href}\n key={`alert-action-${i}`}\n target={action.target}\n >\n {action.title}\n </Button>\n );\n };\n\n render() {\n const {\n actions,\n actionsLayout,\n children,\n className,\n style,\n platform,\n viewWidth,\n text,\n header,\n ...restProps\n } = this.props;\n const { closing } = this.state;\n\n const resolvedActionsLayout: TAlertProps[\"actionsLayout\"] =\n platform === VKCOM ? \"horizontal\" : actionsLayout;\n const canShowCloseButton =\n platform === VKCOM ||\n (platform === ANDROID && viewWidth >= ViewWidth.SMALL_TABLET);\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n\n return (\n <PopoutWrapper\n className={className}\n closing={closing}\n style={style}\n onClick={this.onClose}\n >\n <FocusTrap\n {...restProps}\n getRootRef={this.element}\n onClick={this.stopPropagation}\n onClose={this.onClose}\n timeout={this.timeout}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(getClassName(\"Alert\", platform), {\n \"Alert--v\": resolvedActionsLayout === \"vertical\",\n \"Alert--h\": resolvedActionsLayout === \"horizontal\",\n \"Alert--closing\": closing,\n \"Alert--desktop\": isDesktop,\n })}\n >\n {canShowCloseButton && <ModalDismissButton onClick={this.onClose} />}\n <div vkuiClass=\"Alert__content\">\n {hasReactNode(header) && this.renderHeader(header)}\n {hasReactNode(text) && this.renderText(text)}\n {children}\n </div>\n <footer vkuiClass=\"Alert__actions\">\n {actions?.map(this.renderAction)}\n </footer>\n </FocusTrap>\n </PopoutWrapper>\n );\n }\n}\n\nexport const Alert = withContext(\n withPlatform(\n withAdaptivity(AlertComponent, {\n viewWidth: true,\n })\n ),\n ScrollContext,\n \"scroll\"\n);\n"],"file":"Alert.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/Alert/Alert.tsx"],"names":["React","Tappable","PopoutWrapper","getClassName","classNames","ANDROID","VKCOM","IOS","ViewWidth","Button","hasReactNode","stopPropagation","Title","Caption","Text","ModalDismissButton","FocusTrap","useScrollLock","useWaitTransitionFinish","usePlatform","useAdaptivity","AlertHeader","props","platform","AlertText","AlertAction","action","onItemClick","restProps","viewWidth","handleItemClick","useCallback","Component","href","mode","target","title","DESKTOP","Alert","actions","actionsLayout","children","className","style","text","header","onClose","dismissLabel","waitTransitionFinish","useState","closing","setClosing","elementRef","useRef","resolvedActionsLayout","canShowCloseButton","SMALL_TABLET","isDesktop","timeout","close","current","item","autoclose","e","propertyName","map","i"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport Tappable from \"../Tappable/Tappable\";\nimport { PopoutWrapper } from \"../PopoutWrapper/PopoutWrapper\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { classNames } from \"../../lib/classNames\";\nimport { ANDROID, VKCOM, IOS } from \"../../lib/platform\";\nimport { ViewWidth } from \"../../hoc/withAdaptivity\";\nimport { Button, ButtonProps } from \"../Button/Button\";\nimport { hasReactNode, stopPropagation } from \"../../lib/utils\";\nimport { Title } from \"../Typography/Title/Title\";\nimport { Caption } from \"../Typography/Caption/Caption\";\nimport { Text } from \"../Typography/Text/Text\";\nimport ModalDismissButton from \"../ModalDismissButton/ModalDismissButton\";\nimport { FocusTrap } from \"../FocusTrap/FocusTrap\";\nimport { useScrollLock } from \"../AppRoot/ScrollContext\";\nimport { useWaitTransitionFinish } from \"../../hooks/useWaitTransitionFinish\";\nimport { usePlatform } from \"../../hooks/usePlatform\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport \"./Alert.css\";\n\nexport type AlertActionInterface = AlertAction &\n React.AnchorHTMLAttributes<HTMLElement>;\n\nexport interface AlertAction extends Pick<ButtonProps, \"Component\" | \"href\"> {\n title: string;\n action?: VoidFunction;\n autoclose?: boolean;\n mode: \"cancel\" | \"destructive\" | \"default\";\n}\n\nexport interface AlertProps extends React.HTMLAttributes<HTMLElement> {\n actionsLayout?: \"vertical\" | \"horizontal\";\n actions?: AlertAction[];\n header?: React.ReactNode;\n text?: React.ReactNode;\n onClose?: VoidFunction;\n\n /**\n * `aria-label` для кнопки закрытия. Необходим, чтобы кнопка была доступной.\n */\n dismissLabel?: string;\n}\n\ntype ItemClickHandler = (item: AlertActionInterface) => void;\n\ninterface AlertTypography {\n id: string;\n}\n\nconst AlertHeader: React.FC<AlertTypography> = (props) => {\n const platform = usePlatform();\n\n switch (platform) {\n case IOS:\n return (\n <Title vkuiClass=\"Alert__header\" weight=\"1\" level=\"3\" {...props} />\n );\n default:\n return (\n <Title vkuiClass=\"Alert__header\" weight=\"2\" level=\"2\" {...props} />\n );\n }\n};\n\nconst AlertText: React.FC<AlertTypography> = (props) => {\n const platform = usePlatform();\n\n switch (platform) {\n case VKCOM:\n return <Caption vkuiClass=\"Alert__text\" {...props} />;\n case IOS:\n return <Caption vkuiClass=\"Alert__text\" level=\"2\" {...props} />;\n default:\n return (\n <Text Component=\"span\" vkuiClass=\"Alert__text\" weight=\"3\" {...props} />\n );\n }\n};\n\ninterface AlertActionProps {\n action: AlertActionInterface;\n onItemClick: ItemClickHandler;\n}\n\nconst AlertAction: React.FC<AlertActionProps> = ({\n action,\n onItemClick,\n ...restProps\n}) => {\n const platform = usePlatform();\n const { viewWidth } = useAdaptivity();\n const handleItemClick = React.useCallback(\n () => onItemClick(action),\n [onItemClick, action]\n );\n\n if (platform === IOS) {\n const { Component = \"button\" } = action;\n return (\n <Tappable\n Component={action.href ? \"a\" : Component}\n vkuiClass={classNames(\"Alert__action\", `Alert__action--${action.mode}`)}\n onClick={handleItemClick}\n href={action.href}\n target={action.target}\n {...restProps}\n >\n {action.title}\n </Tappable>\n );\n }\n\n let mode: ButtonProps[\"mode\"] =\n action.mode === \"cancel\" ? \"secondary\" : \"primary\";\n\n if (platform === ANDROID) {\n mode = \"tertiary\";\n\n if (viewWidth === ViewWidth.DESKTOP && action.mode === \"destructive\") {\n mode = \"destructive\";\n }\n }\n\n return (\n <Button\n vkuiClass={classNames(\"Alert__button\", `Alert__button--${action.mode}`)}\n mode={mode}\n size=\"m\"\n onClick={handleItemClick}\n Component={action.Component}\n href={action.href}\n target={action.target}\n >\n {action.title}\n </Button>\n );\n};\n\n/**\n * @see https://vkcom.github.io/VKUI/#/Alert\n */\nexport const Alert: React.FC<AlertProps> = ({\n actions = [],\n actionsLayout = \"horizontal\",\n children,\n className,\n style,\n text,\n header,\n onClose,\n dismissLabel = \"Закрыть предупреждение\",\n ...restProps\n}) => {\n const platform = usePlatform();\n const { viewWidth } = useAdaptivity();\n const { waitTransitionFinish } = useWaitTransitionFinish();\n\n const [closing, setClosing] = React.useState(false);\n\n const elementRef = React.useRef<HTMLDivElement>(null);\n\n const resolvedActionsLayout: AlertProps[\"actionsLayout\"] =\n platform === VKCOM ? \"horizontal\" : actionsLayout;\n const canShowCloseButton =\n platform === VKCOM ||\n (platform === ANDROID && viewWidth >= ViewWidth.SMALL_TABLET);\n const isDesktop = viewWidth >= ViewWidth.SMALL_TABLET;\n\n const timeout = platform === ANDROID || platform === VKCOM ? 200 : 300;\n\n const close = React.useCallback(() => {\n setClosing(true);\n waitTransitionFinish(\n elementRef.current,\n () => {\n onClose && onClose();\n },\n timeout\n );\n }, [elementRef, waitTransitionFinish, onClose, timeout]);\n\n const onItemClick: ItemClickHandler = React.useCallback(\n (item: AlertActionInterface) => {\n const { action, autoclose } = item;\n\n if (autoclose) {\n setClosing(true);\n waitTransitionFinish(\n elementRef.current,\n (e?: TransitionEvent) => {\n if (!e || e.propertyName === \"opacity\") {\n onClose && onClose();\n action && action();\n }\n },\n timeout\n );\n } else {\n action && action();\n }\n },\n [elementRef, waitTransitionFinish, onClose, timeout]\n );\n\n useScrollLock();\n\n return (\n <PopoutWrapper\n className={className}\n closing={closing}\n style={style}\n onClick={close}\n >\n <FocusTrap\n {...restProps}\n getRootRef={elementRef}\n onClick={stopPropagation}\n onClose={close}\n timeout={timeout}\n vkuiClass={classNames(\n getClassName(\"Alert\", platform),\n resolvedActionsLayout === \"vertical\" ? \"Alert--v\" : \"Alert--h\",\n closing && \"Alert--closing\",\n isDesktop && \"Alert--desktop\"\n )}\n role=\"alertdialog\"\n aria-modal\n aria-labelledby=\"vkui--alert--title\"\n aria-describedby=\"vkui--alert--desc\"\n >\n <div vkuiClass=\"Alert__content\">\n {hasReactNode(header) && (\n <AlertHeader id=\"vkui--alert--title\">{header}</AlertHeader>\n )}\n {hasReactNode(text) && (\n <AlertText id=\"vkui--alert--desc\">{text}</AlertText>\n )}\n {children}\n </div>\n <div vkuiClass=\"Alert__actions\">\n {actions.map((action, i) => (\n <AlertAction key={i} action={action} onItemClick={onItemClick} />\n ))}\n </div>\n {canShowCloseButton && (\n <ModalDismissButton onClick={close} aria-label={dismissLabel} />\n )}\n </FocusTrap>\n </PopoutWrapper>\n );\n};\n"],"file":"Alert.js"}
|
|
@@ -11,4 +11,7 @@ export interface AppRootProps extends React.HTMLAttributes<HTMLDivElement>, Pick
|
|
|
11
11
|
noLegacyClasses?: boolean;
|
|
12
12
|
scroll?: "global" | "contain";
|
|
13
13
|
}
|
|
14
|
+
/**
|
|
15
|
+
* @see https://vkcom.github.io/VKUI/#/AppRoot
|
|
16
|
+
*/
|
|
14
17
|
export declare const AppRoot: React.FC<Pick<AppRootProps, "window" | "hidden" | "dir" | "slot" | "style" | "title" | "scroll" | "color" | "translate" | "prefix" | "children" | "className" | "id" | "lang" | "role" | "tabIndex" | "mode" | "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" | "embedded" | "noLegacyClasses"> & import("../AdaptivityProvider/AdaptivityContext").SizeProps>;
|
|
@@ -12,13 +12,17 @@ import { withAdaptivity, SizeType } from "../../hoc/withAdaptivity";
|
|
|
12
12
|
import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
|
|
13
13
|
import { classScopingMode } from "../../lib/classScopingMode";
|
|
14
14
|
import { IconSettingsProvider } from "@vkontakte/icons";
|
|
15
|
-
import {
|
|
15
|
+
import { ElementScrollController, GlobalScrollController } from "./ScrollContext";
|
|
16
16
|
import { noop } from "../../lib/utils";
|
|
17
17
|
import { warnOnce } from "../../lib/warnOnce";
|
|
18
18
|
import { useKeyboardInputTracker } from "../../hooks/useKeyboardInputTracker";
|
|
19
19
|
import { useInsets } from "../../hooks/useInsets";
|
|
20
20
|
import { ConfigProviderContext } from "../ConfigProvider/ConfigProviderContext";
|
|
21
21
|
var warn = warnOnce("AppRoot");
|
|
22
|
+
/**
|
|
23
|
+
* @see https://vkcom.github.io/VKUI/#/AppRoot
|
|
24
|
+
*/
|
|
25
|
+
|
|
22
26
|
export var AppRoot = withAdaptivity(function (_ref) {
|
|
23
27
|
var children = _ref.children,
|
|
24
28
|
_mode = _ref.mode,
|
|
@@ -42,7 +46,6 @@ export var AppRoot = withAdaptivity(function (_ref) {
|
|
|
42
46
|
setPortalRoot = _React$useState2[1];
|
|
43
47
|
|
|
44
48
|
var _useDOM = useDOM(),
|
|
45
|
-
window = _useDOM.window,
|
|
46
49
|
document = _useDOM.document;
|
|
47
50
|
|
|
48
51
|
var insets = useInsets();
|
|
@@ -155,9 +158,9 @@ export var AppRoot = withAdaptivity(function (_ref) {
|
|
|
155
158
|
return document.documentElement.style.removeProperty("color-scheme");
|
|
156
159
|
};
|
|
157
160
|
}, [appearance]);
|
|
158
|
-
var
|
|
159
|
-
return scroll === "contain" ?
|
|
160
|
-
}, [
|
|
161
|
+
var ScrollController = React.useMemo(function () {
|
|
162
|
+
return scroll === "contain" ? ElementScrollController : GlobalScrollController;
|
|
163
|
+
}, [scroll]);
|
|
161
164
|
var content = createScopedElement(AppRootContext.Provider, {
|
|
162
165
|
value: {
|
|
163
166
|
appRoot: rootRef,
|
|
@@ -166,8 +169,8 @@ export var AppRoot = withAdaptivity(function (_ref) {
|
|
|
166
169
|
keyboardInput: isKeyboardInputActive,
|
|
167
170
|
mode: mode
|
|
168
171
|
}
|
|
169
|
-
}, createScopedElement(
|
|
170
|
-
|
|
172
|
+
}, createScopedElement(ScrollController, {
|
|
173
|
+
elRef: rootRef
|
|
171
174
|
}, createScopedElement(IconSettingsProvider, {
|
|
172
175
|
classPrefix: "vkui",
|
|
173
176
|
globalClasses: !noLegacyClasses
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppRoot/AppRoot.tsx"],"names":["React","useDOM","classNames","AppRootContext","withAdaptivity","SizeType","useIsomorphicLayoutEffect","classScopingMode","IconSettingsProvider","elementScrollController","globalScrollController","ScrollContext","noop","warnOnce","useKeyboardInputTracker","useInsets","ConfigProviderContext","warn","AppRoot","children","_mode","mode","_embedded","embedded","sizeX","hasMouse","noLegacyClasses","scroll","props","isKeyboardInputActive","rootRef","useRef","useState","portalRoot","setPortalRoot","window","document","insets","useContext","appearance","initialized","current","documentElement","classList","add","noConflict","process","env","NODE_ENV","portal","createElement","body","appendChild","parentElement","removeChild","parent","classes","concat","remove","key","hasOwnProperty","inset","style","setProperty","removeProperty","REGULAR","container","undefined","scrollController","useMemo","content","appRoot","keyboardInput"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { AppRootContext } from \"./AppRootContext\";\nimport {\n withAdaptivity,\n SizeType,\n AdaptivityProps,\n} from \"../../hoc/withAdaptivity\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { classScopingMode } from \"../../lib/classScopingMode\";\nimport { IconSettingsProvider } from \"@vkontakte/icons\";\nimport {\n elementScrollController,\n globalScrollController,\n ScrollContext,\n ScrollContextInterface,\n} from \"./ScrollContext\";\nimport { noop } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { useKeyboardInputTracker } from \"../../hooks/useKeyboardInputTracker\";\nimport { useInsets } from \"../../hooks/useInsets\";\nimport { Insets } from \"@vkontakte/vk-bridge\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport \"./AppRoot.css\";\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Pick<AdaptivityProps, \"sizeX\" | \"hasMouse\"> {\n /** @deprecated Use mode=\"embedded\" */\n embedded?: boolean;\n /** Режим встраивания */\n mode?: \"partial\" | \"embedded\" | \"full\";\n window?: Window;\n /** Убирает классы без префикса (.Button) */\n noLegacyClasses?: boolean;\n scroll?: \"global\" | \"contain\";\n}\n\nconst warn = warnOnce(\"AppRoot\");\nexport const AppRoot = withAdaptivity<AppRootProps>(\n ({\n children,\n mode: _mode,\n embedded: _embedded,\n sizeX,\n hasMouse,\n noLegacyClasses = false,\n scroll = \"global\",\n ...props\n }) => {\n // normalize mode\n const mode = _mode || (_embedded ? \"embedded\" : \"full\");\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLDivElement | null>(\n null\n );\n const { window, document } = useDOM();\n const insets = useInsets();\n const { appearance } = React.useContext(ConfigProviderContext);\n\n const initialized = React.useRef(false);\n if (!initialized.current) {\n if (document && mode === \"full\") {\n document.documentElement.classList.add(\"vkui\");\n }\n classScopingMode.noConflict = noLegacyClasses;\n initialized.current = true;\n }\n\n if (process.env.NODE_ENV === \"development\") {\n if (scroll !== \"global\" && mode !== \"embedded\") {\n warn(\n `Свойство scroll=\"${scroll}\" поддерживается только в режиме embedded`,\n \"error\"\n );\n }\n if (_mode && _embedded) {\n warn(`Свойство mode=\"${mode}\" приоритетнее, чем \"embedded\"`);\n }\n }\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n const portal = document!.createElement(\"div\");\n portal.classList.add(\"vkui__portal-root\");\n document!.body.appendChild(portal);\n setPortalRoot(portal);\n return () => {\n portal.parentElement?.removeChild(portal);\n };\n }, []);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\") {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n const classes = [\"vkui__root\"].concat(\n mode === \"embedded\" ? \"vkui__root--embedded\" : []\n );\n parent?.classList.add(...classes);\n\n return () => {\n parent?.classList.remove(...classes);\n if (mode === \"full\") {\n document?.documentElement.classList.remove(\"vkui\");\n }\n };\n }, []);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n for (const key in insets) {\n if (\n insets.hasOwnProperty(key) &&\n typeof insets[key as keyof Insets] === \"number\"\n ) {\n const inset = insets[key as keyof Insets];\n parent.style.setProperty(`--safe-area-inset-${key}`, `${inset}px`);\n portalRoot &&\n portalRoot.style.setProperty(\n `--safe-area-inset-${key}`,\n `${inset}px`\n );\n }\n }\n\n return () => {\n for (const key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(`--safe-area-inset-${key}`);\n portalRoot &&\n portalRoot.style.removeProperty(`--safe-area-inset-${key}`);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || sizeX !== SizeType.REGULAR) {\n return noop;\n }\n const container =\n mode === \"embedded\" ? rootRef.current?.parentElement : document!.body;\n container?.classList.add(\"vkui--sizeX-regular\");\n return () => container?.classList.remove(\"vkui--sizeX-regular\");\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== \"full\" || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty(\"color-scheme\", appearance);\n\n return () =>\n document!.documentElement.style.removeProperty(\"color-scheme\");\n }, [appearance]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () =>\n scroll === \"contain\"\n ? elementScrollController(rootRef)\n : globalScrollController(window, document),\n [document, scroll, window]\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot: portalRoot,\n embedded: mode === \"embedded\",\n keyboardInput: isKeyboardInputActive,\n mode,\n }}\n >\n <ScrollContext.Provider value={scrollController}>\n <IconSettingsProvider\n classPrefix=\"vkui\"\n globalClasses={!noLegacyClasses}\n >\n {children}\n </IconSettingsProvider>\n </ScrollContext.Provider>\n </AppRootContext.Provider>\n );\n\n return mode === \"partial\" ? (\n content\n ) : (\n <div\n ref={rootRef}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"AppRoot\", {\n \"AppRoot--no-mouse\": !hasMouse,\n })}\n {...props}\n >\n {content}\n </div>\n );\n },\n {\n sizeX: true,\n hasMouse: true,\n }\n);\n"],"file":"AppRoot.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/AppRoot/AppRoot.tsx"],"names":["React","useDOM","classNames","AppRootContext","withAdaptivity","SizeType","useIsomorphicLayoutEffect","classScopingMode","IconSettingsProvider","ElementScrollController","GlobalScrollController","noop","warnOnce","useKeyboardInputTracker","useInsets","ConfigProviderContext","warn","AppRoot","children","_mode","mode","_embedded","embedded","sizeX","hasMouse","noLegacyClasses","scroll","props","isKeyboardInputActive","rootRef","useRef","useState","portalRoot","setPortalRoot","document","insets","useContext","appearance","initialized","current","documentElement","classList","add","noConflict","process","env","NODE_ENV","portal","createElement","body","appendChild","parentElement","removeChild","parent","classes","concat","remove","key","hasOwnProperty","inset","style","setProperty","removeProperty","REGULAR","container","undefined","ScrollController","useMemo","content","appRoot","keyboardInput"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { useDOM } from \"../../lib/dom\";\nimport { classNames } from \"../../lib/classNames\";\nimport { AppRootContext } from \"./AppRootContext\";\nimport {\n withAdaptivity,\n SizeType,\n AdaptivityProps,\n} from \"../../hoc/withAdaptivity\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { classScopingMode } from \"../../lib/classScopingMode\";\nimport { IconSettingsProvider } from \"@vkontakte/icons\";\nimport {\n ElementScrollController,\n GlobalScrollController,\n} from \"./ScrollContext\";\nimport { noop } from \"../../lib/utils\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { useKeyboardInputTracker } from \"../../hooks/useKeyboardInputTracker\";\nimport { useInsets } from \"../../hooks/useInsets\";\nimport { Insets } from \"@vkontakte/vk-bridge\";\nimport { ConfigProviderContext } from \"../ConfigProvider/ConfigProviderContext\";\nimport \"./AppRoot.css\";\n\n// Используйте classList, но будьте осторожны\n/* eslint-disable no-restricted-properties */\n\nexport interface AppRootProps\n extends React.HTMLAttributes<HTMLDivElement>,\n Pick<AdaptivityProps, \"sizeX\" | \"hasMouse\"> {\n /** @deprecated Use mode=\"embedded\" */\n embedded?: boolean;\n /** Режим встраивания */\n mode?: \"partial\" | \"embedded\" | \"full\";\n window?: Window;\n /** Убирает классы без префикса (.Button) */\n noLegacyClasses?: boolean;\n scroll?: \"global\" | \"contain\";\n}\n\nconst warn = warnOnce(\"AppRoot\");\n\n/**\n * @see https://vkcom.github.io/VKUI/#/AppRoot\n */\nexport const AppRoot = withAdaptivity<AppRootProps>(\n ({\n children,\n mode: _mode,\n embedded: _embedded,\n sizeX,\n hasMouse,\n noLegacyClasses = false,\n scroll = \"global\",\n ...props\n }) => {\n // normalize mode\n const mode = _mode || (_embedded ? \"embedded\" : \"full\");\n const isKeyboardInputActive = useKeyboardInputTracker();\n const rootRef = React.useRef<HTMLDivElement | null>(null);\n const [portalRoot, setPortalRoot] = React.useState<HTMLDivElement | null>(\n null\n );\n const { document } = useDOM();\n const insets = useInsets();\n const { appearance } = React.useContext(ConfigProviderContext);\n\n const initialized = React.useRef(false);\n if (!initialized.current) {\n if (document && mode === \"full\") {\n document.documentElement.classList.add(\"vkui\");\n }\n classScopingMode.noConflict = noLegacyClasses;\n initialized.current = true;\n }\n\n if (process.env.NODE_ENV === \"development\") {\n if (scroll !== \"global\" && mode !== \"embedded\") {\n warn(\n `Свойство scroll=\"${scroll}\" поддерживается только в режиме embedded`,\n \"error\"\n );\n }\n if (_mode && _embedded) {\n warn(`Свойство mode=\"${mode}\" приоритетнее, чем \"embedded\"`);\n }\n }\n\n // setup portal\n useIsomorphicLayoutEffect(() => {\n const portal = document!.createElement(\"div\");\n portal.classList.add(\"vkui__portal-root\");\n document!.body.appendChild(portal);\n setPortalRoot(portal);\n return () => {\n portal.parentElement?.removeChild(portal);\n };\n }, []);\n\n // setup root classes\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\") {\n return noop;\n }\n\n const parent = rootRef.current?.parentElement;\n const classes = [\"vkui__root\"].concat(\n mode === \"embedded\" ? \"vkui__root--embedded\" : []\n );\n parent?.classList.add(...classes);\n\n return () => {\n parent?.classList.remove(...classes);\n if (mode === \"full\") {\n document?.documentElement.classList.remove(\"vkui\");\n }\n };\n }, []);\n\n // setup insets\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || !rootRef.current?.parentElement) {\n return noop;\n }\n\n const parent = rootRef.current.parentElement;\n\n for (const key in insets) {\n if (\n insets.hasOwnProperty(key) &&\n typeof insets[key as keyof Insets] === \"number\"\n ) {\n const inset = insets[key as keyof Insets];\n parent.style.setProperty(`--safe-area-inset-${key}`, `${inset}px`);\n portalRoot &&\n portalRoot.style.setProperty(\n `--safe-area-inset-${key}`,\n `${inset}px`\n );\n }\n }\n\n return () => {\n for (const key in insets) {\n if (insets.hasOwnProperty(key)) {\n parent.style.removeProperty(`--safe-area-inset-${key}`);\n portalRoot &&\n portalRoot.style.removeProperty(`--safe-area-inset-${key}`);\n }\n }\n };\n }, [insets, portalRoot]);\n\n // adaptivity handler\n useIsomorphicLayoutEffect(() => {\n if (mode === \"partial\" || sizeX !== SizeType.REGULAR) {\n return noop;\n }\n const container =\n mode === \"embedded\" ? rootRef.current?.parentElement : document!.body;\n container?.classList.add(\"vkui--sizeX-regular\");\n return () => container?.classList.remove(\"vkui--sizeX-regular\");\n }, [sizeX]);\n\n useIsomorphicLayoutEffect(() => {\n if (mode !== \"full\" || appearance === undefined) {\n return noop;\n }\n document!.documentElement.style.setProperty(\"color-scheme\", appearance);\n\n return () =>\n document!.documentElement.style.removeProperty(\"color-scheme\");\n }, [appearance]);\n\n const ScrollController = React.useMemo(\n () =>\n scroll === \"contain\" ? ElementScrollController : GlobalScrollController,\n [scroll]\n );\n\n const content = (\n <AppRootContext.Provider\n value={{\n appRoot: rootRef,\n portalRoot: portalRoot,\n embedded: mode === \"embedded\",\n keyboardInput: isKeyboardInputActive,\n mode,\n }}\n >\n <ScrollController elRef={rootRef}>\n <IconSettingsProvider\n classPrefix=\"vkui\"\n globalClasses={!noLegacyClasses}\n >\n {children}\n </IconSettingsProvider>\n </ScrollController>\n </AppRootContext.Provider>\n );\n\n return mode === \"partial\" ? (\n content\n ) : (\n <div\n ref={rootRef}\n // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"AppRoot\", {\n \"AppRoot--no-mouse\": !hasMouse,\n })}\n {...props}\n >\n {content}\n </div>\n );\n },\n {\n sizeX: true,\n hasMouse: true,\n }\n);\n"],"file":"AppRoot.js"}
|
|
@@ -5,11 +5,22 @@ export interface ScrollContextInterface {
|
|
|
5
5
|
y: number;
|
|
6
6
|
};
|
|
7
7
|
scrollTo(x?: number, y?: number): void;
|
|
8
|
+
isScrollLock: boolean;
|
|
8
9
|
enableScrollLock(): void;
|
|
9
10
|
disableScrollLock(): void;
|
|
11
|
+
beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;
|
|
10
12
|
}
|
|
11
13
|
export declare const ScrollContext: React.Context<ScrollContextInterface>;
|
|
12
14
|
export declare const useScroll: () => ScrollContextInterface;
|
|
13
|
-
export
|
|
14
|
-
|
|
15
|
+
export interface ScrollControllerProps {
|
|
16
|
+
elRef: React.RefObject<HTMLElement>;
|
|
17
|
+
}
|
|
18
|
+
export declare const GlobalScrollController: React.FC<ScrollControllerProps>;
|
|
19
|
+
export declare const ElementScrollController: React.FC<ScrollControllerProps>;
|
|
20
|
+
/**
|
|
21
|
+
* Вызывает функцию effect, до блокировки прокрутки
|
|
22
|
+
* @param effect функция, которая может возвращать функцию очистки
|
|
23
|
+
* @param deps effect обновится только при изменении значений в списке.
|
|
24
|
+
*/
|
|
25
|
+
export declare const useScrollLockEffect: (effect: React.EffectCallback, deps: React.DependencyList) => void;
|
|
15
26
|
export declare const useScrollLock: (enabled?: boolean) => void;
|
|
@@ -1,7 +1,10 @@
|
|
|
1
|
+
import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
|
|
2
|
+
import { createScopedElement } from "../../lib/jsxRuntime";
|
|
1
3
|
import * as React from "react";
|
|
2
4
|
import { noop } from "../../lib/utils";
|
|
3
5
|
import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
|
|
4
6
|
import { clamp } from "../../helpers/math";
|
|
7
|
+
import { useDOM } from "../../lib/dom";
|
|
5
8
|
|
|
6
9
|
var clearDisableScrollStyle = function clearDisableScrollStyle(node) {
|
|
7
10
|
Object.assign(node.style, {
|
|
@@ -22,105 +25,197 @@ export var ScrollContext = /*#__PURE__*/React.createContext({
|
|
|
22
25
|
};
|
|
23
26
|
},
|
|
24
27
|
scrollTo: noop,
|
|
28
|
+
isScrollLock: false,
|
|
25
29
|
enableScrollLock: noop,
|
|
26
30
|
disableScrollLock: noop
|
|
27
31
|
});
|
|
28
32
|
export var useScroll = function useScroll() {
|
|
29
33
|
return React.useContext(ScrollContext);
|
|
30
34
|
};
|
|
31
|
-
export var
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
35
|
+
export var GlobalScrollController = function GlobalScrollController(_ref) {
|
|
36
|
+
var children = _ref.children;
|
|
37
|
+
|
|
38
|
+
var _useDOM = useDOM(),
|
|
39
|
+
window = _useDOM.window,
|
|
40
|
+
document = _useDOM.document;
|
|
41
|
+
|
|
42
|
+
var _React$useState = React.useState(false),
|
|
43
|
+
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
44
|
+
isScrollLock = _React$useState2[0],
|
|
45
|
+
setScrollLock = _React$useState2[1];
|
|
46
|
+
|
|
47
|
+
var beforeScrollLockFnSetRef = React.useRef(new Set());
|
|
48
|
+
var getScroll = React.useCallback(function () {
|
|
49
|
+
return {
|
|
50
|
+
x: window.pageXOffset,
|
|
51
|
+
y: window.pageYOffset
|
|
52
|
+
};
|
|
53
|
+
}, [window]);
|
|
54
|
+
var scrollTo = React.useCallback(function () {
|
|
55
|
+
var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
56
|
+
var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
57
|
+
// Some iOS versions do not normalize scroll — do it manually.
|
|
58
|
+
window.scrollTo(x ? clamp(x, 0, document.body.scrollWidth - window.innerWidth) : 0, y ? clamp(y, 0, document.body.scrollHeight - window.innerHeight) : 0);
|
|
59
|
+
}, [document, window]);
|
|
60
|
+
var enableScrollLock = React.useCallback(function () {
|
|
61
|
+
beforeScrollLockFnSetRef.current.forEach(function (fn) {
|
|
62
|
+
fn();
|
|
63
|
+
});
|
|
64
|
+
var scrollY = window.pageYOffset;
|
|
65
|
+
var scrollX = window.pageXOffset;
|
|
66
|
+
var overflowY = window.innerWidth > document.documentElement.clientWidth ? "scroll" : "";
|
|
67
|
+
var overflowX = window.innerHeight > document.documentElement.clientHeight ? "scroll" : "";
|
|
68
|
+
Object.assign(document.body.style, {
|
|
69
|
+
position: "fixed",
|
|
70
|
+
top: "-".concat(scrollY, "px"),
|
|
71
|
+
left: "-".concat(scrollX, "px"),
|
|
72
|
+
right: "0",
|
|
73
|
+
overflowY: overflowY,
|
|
74
|
+
overflowX: overflowX
|
|
75
|
+
});
|
|
76
|
+
setScrollLock(true);
|
|
77
|
+
}, [document, window]);
|
|
78
|
+
var disableScrollLock = React.useCallback(function () {
|
|
79
|
+
var scrollY = document.body.style.top;
|
|
80
|
+
var scrollX = document.body.style.left;
|
|
81
|
+
clearDisableScrollStyle(document.body);
|
|
82
|
+
window.scrollTo(-parseInt(scrollX || "0"), -parseInt(scrollY || "0"));
|
|
83
|
+
setScrollLock(false);
|
|
84
|
+
}, [document, window]);
|
|
85
|
+
var scrollController = React.useMemo(function () {
|
|
86
|
+
return {
|
|
87
|
+
getScroll: getScroll,
|
|
88
|
+
scrollTo: scrollTo,
|
|
89
|
+
isScrollLock: isScrollLock,
|
|
90
|
+
disableScrollLock: disableScrollLock,
|
|
91
|
+
enableScrollLock: enableScrollLock,
|
|
92
|
+
beforeScrollLockFnSetRef: beforeScrollLockFnSetRef
|
|
93
|
+
};
|
|
94
|
+
}, [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock]);
|
|
95
|
+
return createScopedElement(ScrollContext.Provider, {
|
|
96
|
+
value: scrollController
|
|
97
|
+
}, children);
|
|
98
|
+
};
|
|
99
|
+
export var ElementScrollController = function ElementScrollController(_ref2) {
|
|
100
|
+
var elRef = _ref2.elRef,
|
|
101
|
+
children = _ref2.children;
|
|
102
|
+
|
|
103
|
+
var _React$useState3 = React.useState(false),
|
|
104
|
+
_React$useState4 = _slicedToArray(_React$useState3, 2),
|
|
105
|
+
isScrollLock = _React$useState4[0],
|
|
106
|
+
setScrollLock = _React$useState4[1];
|
|
107
|
+
|
|
108
|
+
var beforeScrollLockFnSetRef = React.useRef(new Set());
|
|
109
|
+
var getScroll = React.useCallback(function () {
|
|
110
|
+
var _elRef$current$scroll, _elRef$current, _elRef$current$scroll2, _elRef$current2;
|
|
111
|
+
|
|
112
|
+
return {
|
|
113
|
+
x: (_elRef$current$scroll = (_elRef$current = elRef.current) === null || _elRef$current === void 0 ? void 0 : _elRef$current.scrollLeft) !== null && _elRef$current$scroll !== void 0 ? _elRef$current$scroll : 0,
|
|
114
|
+
y: (_elRef$current$scroll2 = (_elRef$current2 = elRef.current) === null || _elRef$current2 === void 0 ? void 0 : _elRef$current2.scrollTop) !== null && _elRef$current$scroll2 !== void 0 ? _elRef$current$scroll2 : 0
|
|
115
|
+
};
|
|
116
|
+
}, [elRef]);
|
|
117
|
+
var scrollTo = React.useCallback(function () {
|
|
118
|
+
var x = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0;
|
|
119
|
+
var y = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 0;
|
|
120
|
+
var el = elRef.current; // Some iOS versions do not normalize scroll — do it manually.
|
|
121
|
+
|
|
122
|
+
el === null || el === void 0 ? void 0 : el.scrollTo(x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0, y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0);
|
|
123
|
+
}, [elRef]);
|
|
124
|
+
var enableScrollLock = React.useCallback(function () {
|
|
125
|
+
var el = elRef.current;
|
|
126
|
+
|
|
127
|
+
if (!el) {
|
|
128
|
+
return;
|
|
64
129
|
}
|
|
65
|
-
|
|
130
|
+
|
|
131
|
+
beforeScrollLockFnSetRef.current.forEach(function (fn) {
|
|
132
|
+
fn();
|
|
133
|
+
});
|
|
134
|
+
var scrollY = el.scrollTop;
|
|
135
|
+
var scrollX = el.scrollLeft;
|
|
136
|
+
var overflowY = el.scrollWidth > el.clientWidth ? "scroll" : "";
|
|
137
|
+
var overflowX = el.scrollHeight > el.clientHeight ? "scroll" : "";
|
|
138
|
+
Object.assign(el.style, {
|
|
139
|
+
position: "absolute",
|
|
140
|
+
top: "-".concat(scrollY, "px"),
|
|
141
|
+
left: "-".concat(scrollX, "px"),
|
|
142
|
+
right: "0",
|
|
143
|
+
overflowY: overflowY,
|
|
144
|
+
overflowX: overflowX
|
|
145
|
+
});
|
|
146
|
+
setScrollLock(true);
|
|
147
|
+
}, [elRef]);
|
|
148
|
+
var disableScrollLock = React.useCallback(function () {
|
|
149
|
+
var el = elRef.current;
|
|
150
|
+
|
|
151
|
+
if (!el) {
|
|
152
|
+
return;
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
var scrollY = el.style.top;
|
|
156
|
+
var scrollX = el.style.left;
|
|
157
|
+
clearDisableScrollStyle(el);
|
|
158
|
+
el.scrollTo(-parseInt(scrollX || "0"), -parseInt(scrollY || "0"));
|
|
159
|
+
setScrollLock(false);
|
|
160
|
+
}, [elRef]);
|
|
161
|
+
var scrollController = React.useMemo(function () {
|
|
162
|
+
return {
|
|
163
|
+
getScroll: getScroll,
|
|
164
|
+
scrollTo: scrollTo,
|
|
165
|
+
isScrollLock: isScrollLock,
|
|
166
|
+
disableScrollLock: disableScrollLock,
|
|
167
|
+
enableScrollLock: enableScrollLock,
|
|
168
|
+
beforeScrollLockFnSetRef: beforeScrollLockFnSetRef
|
|
169
|
+
};
|
|
170
|
+
}, [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock]);
|
|
171
|
+
return createScopedElement(ScrollContext.Provider, {
|
|
172
|
+
value: scrollController
|
|
173
|
+
}, children);
|
|
66
174
|
};
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
});
|
|
103
|
-
},
|
|
104
|
-
disableScrollLock: function disableScrollLock() {
|
|
105
|
-
var el = elRef.current;
|
|
106
|
-
|
|
107
|
-
if (!el) {
|
|
108
|
-
return;
|
|
109
|
-
}
|
|
110
|
-
|
|
111
|
-
var scrollY = el.style.top;
|
|
112
|
-
var scrollX = el.style.left;
|
|
113
|
-
clearDisableScrollStyle(el);
|
|
114
|
-
el.scrollTo(-parseInt(scrollX || "0"), -parseInt(scrollY || "0"));
|
|
175
|
+
/**
|
|
176
|
+
* Вызывает функцию effect, до блокировки прокрутки
|
|
177
|
+
* @param effect функция, которая может возвращать функцию очистки
|
|
178
|
+
* @param deps effect обновится только при изменении значений в списке.
|
|
179
|
+
*/
|
|
180
|
+
|
|
181
|
+
export var useScrollLockEffect = function useScrollLockEffect(effect, deps) {
|
|
182
|
+
var destructorRef = React.useRef(noop);
|
|
183
|
+
|
|
184
|
+
var _useScroll = useScroll(),
|
|
185
|
+
isScrollLock = _useScroll.isScrollLock,
|
|
186
|
+
beforeScrollLockFnSetRef = _useScroll.beforeScrollLockFnSetRef; // Изменяем effectCallback только при изменении deps
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
var effectCallback = React.useCallback(function () {
|
|
190
|
+
destructorRef.current = effect(); // eslint-disable-next-line react-hooks/exhaustive-deps
|
|
191
|
+
}, deps); // Добавляем effectCallback в список функций, которые необходимо вызвать
|
|
192
|
+
// до блокировки
|
|
193
|
+
|
|
194
|
+
React.useEffect(function () {
|
|
195
|
+
var beforeSet = beforeScrollLockFnSetRef === null || beforeScrollLockFnSetRef === void 0 ? void 0 : beforeScrollLockFnSetRef.current;
|
|
196
|
+
|
|
197
|
+
if (!beforeSet) {
|
|
198
|
+
return noop;
|
|
199
|
+
}
|
|
200
|
+
|
|
201
|
+
beforeSet.add(effectCallback);
|
|
202
|
+
return function () {
|
|
203
|
+
beforeSet.delete(effectCallback);
|
|
204
|
+
};
|
|
205
|
+
}, [beforeScrollLockFnSetRef, effectCallback]); // Вызываем сбрасывающую функцию, после отключения блокировки
|
|
206
|
+
|
|
207
|
+
React.useEffect(function () {
|
|
208
|
+
if (!isScrollLock && destructorRef.current) {
|
|
209
|
+
destructorRef.current();
|
|
115
210
|
}
|
|
116
|
-
};
|
|
211
|
+
}, [isScrollLock]);
|
|
117
212
|
};
|
|
118
213
|
export var useScrollLock = function useScrollLock() {
|
|
119
214
|
var enabled = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : true;
|
|
120
215
|
|
|
121
|
-
var
|
|
122
|
-
enableScrollLock =
|
|
123
|
-
disableScrollLock =
|
|
216
|
+
var _useScroll2 = useScroll(),
|
|
217
|
+
enableScrollLock = _useScroll2.enableScrollLock,
|
|
218
|
+
disableScrollLock = _useScroll2.disableScrollLock;
|
|
124
219
|
|
|
125
220
|
useIsomorphicLayoutEffect(function () {
|
|
126
221
|
if (enabled) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/AppRoot/ScrollContext.ts"],"names":["React","noop","useIsomorphicLayoutEffect","clamp","clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overflowY","overflowX","ScrollContext","createContext","getScroll","x","y","scrollTo","enableScrollLock","disableScrollLock","useScroll","useContext","globalScrollController","window","document","pageXOffset","pageYOffset","body","scrollWidth","innerWidth","scrollHeight","innerHeight","scrollY","scrollX","documentElement","clientWidth","clientHeight","parseInt","elementScrollController","elRef","current","scrollLeft","scrollTop","el","useScrollLock","enabled"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { noop } from \"../../lib/utils\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { clamp } from \"../../helpers/math\";\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: \"\",\n top: \"\",\n left: \"\",\n right: \"\",\n overflowY: \"\",\n overflowX: \"\",\n });\n};\n\nexport interface ScrollContextInterface {\n getScroll(): { x: number; y: number };\n scrollTo(x?: number, y?: number): void;\n enableScrollLock(): void;\n disableScrollLock(): void;\n}\n\nexport const ScrollContext = React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n enableScrollLock: noop,\n disableScrollLock: noop,\n});\n\nexport const useScroll = () => React.useContext(ScrollContext);\n\nexport const globalScrollController = (\n window: Window | undefined,\n document: HTMLDocument | undefined\n): ScrollContextInterface => ({\n getScroll: () => ({ x: window!.pageXOffset, y: window!.pageYOffset }),\n scrollTo: (x = 0, y = 0) => {\n // Some iOS versions do not normalize scroll — do it manually.\n window!.scrollTo(\n x ? clamp(x, 0, document!.body.scrollWidth - window!.innerWidth) : 0,\n y ? clamp(y, 0, document!.body.scrollHeight - window!.innerHeight) : 0\n );\n },\n enableScrollLock: () => {\n const scrollY = window!.pageYOffset;\n const scrollX = window!.pageXOffset;\n const overflowY =\n window!.innerWidth > document!.documentElement.clientWidth\n ? \"scroll\"\n : \"\";\n const overflowX =\n window!.innerHeight > document!.documentElement.clientHeight\n ? \"scroll\"\n : \"\";\n\n Object.assign(document!.body.style, {\n position: \"fixed\",\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: \"0\",\n overflowY,\n overflowX,\n });\n },\n disableScrollLock: () => {\n const scrollY = document!.body.style.top;\n const scrollX = document!.body.style.left;\n\n clearDisableScrollStyle(document!.body);\n window!.scrollTo(-parseInt(scrollX || \"0\"), -parseInt(scrollY || \"0\"));\n },\n});\n\nexport const elementScrollController = (\n elRef: React.RefObject<HTMLElement>\n): ScrollContextInterface => ({\n getScroll: () => ({\n x: elRef.current?.scrollLeft ?? 0,\n y: elRef.current?.scrollTop ?? 0,\n }),\n scrollTo: (x = 0, y = 0) => {\n const el = elRef.current;\n // Some iOS versions do not normalize scroll — do it manually.\n el?.scrollTo(\n x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0,\n y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0\n );\n },\n enableScrollLock: () => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n const scrollY = el.scrollTop;\n const scrollX = el.scrollLeft;\n const overflowY = el.scrollWidth > el.clientWidth ? \"scroll\" : \"\";\n const overflowX = el.scrollHeight > el.clientHeight ? \"scroll\" : \"\";\n\n Object.assign(el.style, {\n position: \"absolute\",\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: \"0\",\n overflowY,\n overflowX,\n });\n },\n disableScrollLock: () => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollY = el.style.top;\n const scrollX = el.style.left;\n\n clearDisableScrollStyle(el);\n el.scrollTo(-parseInt(scrollX || \"0\"), -parseInt(scrollY || \"0\"));\n },\n});\n\nexport const useScrollLock = (enabled = true) => {\n const { enableScrollLock, disableScrollLock } = useScroll();\n useIsomorphicLayoutEffect(() => {\n if (enabled) {\n enableScrollLock();\n return disableScrollLock;\n }\n return noop;\n }, [enableScrollLock, disableScrollLock, enabled]);\n};\n"],"file":"ScrollContext.js"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/AppRoot/ScrollContext.tsx"],"names":["React","noop","useIsomorphicLayoutEffect","clamp","useDOM","clearDisableScrollStyle","node","Object","assign","style","position","top","left","right","overflowY","overflowX","ScrollContext","createContext","getScroll","x","y","scrollTo","isScrollLock","enableScrollLock","disableScrollLock","useScroll","useContext","GlobalScrollController","children","window","document","useState","setScrollLock","beforeScrollLockFnSetRef","useRef","Set","useCallback","pageXOffset","pageYOffset","body","scrollWidth","innerWidth","scrollHeight","innerHeight","current","forEach","fn","scrollY","scrollX","documentElement","clientWidth","clientHeight","parseInt","scrollController","useMemo","ElementScrollController","elRef","scrollLeft","scrollTop","el","useScrollLockEffect","effect","deps","destructorRef","effectCallback","useEffect","beforeSet","add","delete","useScrollLock","enabled"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { noop } from \"../../lib/utils\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { clamp } from \"../../helpers/math\";\nimport { useDOM } from \"../../lib/dom\";\n\nconst clearDisableScrollStyle = (node: HTMLElement) => {\n Object.assign(node.style, {\n position: \"\",\n top: \"\",\n left: \"\",\n right: \"\",\n overflowY: \"\",\n overflowX: \"\",\n });\n};\n\nexport interface ScrollContextInterface {\n getScroll(): { x: number; y: number };\n scrollTo(x?: number, y?: number): void;\n isScrollLock: boolean;\n enableScrollLock(): void;\n disableScrollLock(): void;\n beforeScrollLockFnSetRef?: React.RefObject<Set<() => void>>;\n}\n\nexport const ScrollContext = React.createContext<ScrollContextInterface>({\n getScroll: () => ({ x: 0, y: 0 }),\n scrollTo: noop,\n isScrollLock: false,\n enableScrollLock: noop,\n disableScrollLock: noop,\n});\n\nexport const useScroll = () => React.useContext(ScrollContext);\n\nexport interface ScrollControllerProps {\n elRef: React.RefObject<HTMLElement>;\n}\n\nexport const GlobalScrollController: React.FC<ScrollControllerProps> = ({\n children,\n}) => {\n const { window, document } = useDOM();\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface[\"getScroll\"]>(\n () => ({ x: window!.pageXOffset, y: window!.pageYOffset }),\n [window]\n );\n const scrollTo = React.useCallback<ScrollContextInterface[\"scrollTo\"]>(\n (x = 0, y = 0) => {\n // Some iOS versions do not normalize scroll — do it manually.\n window!.scrollTo(\n x ? clamp(x, 0, document!.body.scrollWidth - window!.innerWidth) : 0,\n y ? clamp(y, 0, document!.body.scrollHeight - window!.innerHeight) : 0\n );\n },\n [document, window]\n );\n\n const enableScrollLock = React.useCallback<\n ScrollContextInterface[\"enableScrollLock\"]\n >(() => {\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = window!.pageYOffset;\n const scrollX = window!.pageXOffset;\n const overflowY =\n window!.innerWidth > document!.documentElement.clientWidth\n ? \"scroll\"\n : \"\";\n const overflowX =\n window!.innerHeight > document!.documentElement.clientHeight\n ? \"scroll\"\n : \"\";\n\n Object.assign(document!.body.style, {\n position: \"fixed\",\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: \"0\",\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [document, window]);\n\n const disableScrollLock = React.useCallback<\n ScrollContextInterface[\"disableScrollLock\"]\n >(() => {\n const scrollY = document!.body.style.top;\n const scrollX = document!.body.style.left;\n\n clearDisableScrollStyle(document!.body);\n window!.scrollTo(-parseInt(scrollX || \"0\"), -parseInt(scrollY || \"0\"));\n setScrollLock(false);\n }, [document, window]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n\n beforeScrollLockFnSetRef: beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock]\n );\n\n return (\n <ScrollContext.Provider value={scrollController}>\n {children}\n </ScrollContext.Provider>\n );\n};\n\nexport const ElementScrollController: React.FC<ScrollControllerProps> = ({\n elRef,\n children,\n}) => {\n const [isScrollLock, setScrollLock] = React.useState(false);\n const beforeScrollLockFnSetRef = React.useRef<Set<() => void>>(new Set());\n\n const getScroll = React.useCallback<ScrollContextInterface[\"getScroll\"]>(\n () => ({\n x: elRef.current?.scrollLeft ?? 0,\n y: elRef.current?.scrollTop ?? 0,\n }),\n [elRef]\n );\n const scrollTo = React.useCallback<ScrollContextInterface[\"scrollTo\"]>(\n (x = 0, y = 0) => {\n const el = elRef.current;\n // Some iOS versions do not normalize scroll — do it manually.\n el?.scrollTo(\n x ? clamp(x, 0, el.scrollWidth - el.clientWidth) : 0,\n y ? clamp(y, 0, el.scrollHeight - el.clientHeight) : 0\n );\n },\n [elRef]\n );\n\n const enableScrollLock = React.useCallback<\n ScrollContextInterface[\"enableScrollLock\"]\n >(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n beforeScrollLockFnSetRef.current.forEach((fn) => {\n fn();\n });\n\n const scrollY = el.scrollTop;\n const scrollX = el.scrollLeft;\n const overflowY = el.scrollWidth > el.clientWidth ? \"scroll\" : \"\";\n const overflowX = el.scrollHeight > el.clientHeight ? \"scroll\" : \"\";\n\n Object.assign(el.style, {\n position: \"absolute\",\n top: `-${scrollY}px`,\n left: `-${scrollX}px`,\n right: \"0\",\n overflowY,\n overflowX,\n });\n setScrollLock(true);\n }, [elRef]);\n\n const disableScrollLock = React.useCallback<\n ScrollContextInterface[\"disableScrollLock\"]\n >(() => {\n const el = elRef.current;\n if (!el) {\n return;\n }\n\n const scrollY = el.style.top;\n const scrollX = el.style.left;\n\n clearDisableScrollStyle(el);\n el.scrollTo(-parseInt(scrollX || \"0\"), -parseInt(scrollY || \"0\"));\n setScrollLock(false);\n }, [elRef]);\n\n const scrollController = React.useMemo<ScrollContextInterface>(\n () => ({\n getScroll,\n scrollTo,\n isScrollLock,\n disableScrollLock,\n enableScrollLock,\n beforeScrollLockFnSetRef,\n }),\n [getScroll, scrollTo, isScrollLock, disableScrollLock, enableScrollLock]\n );\n\n return (\n <ScrollContext.Provider value={scrollController}>\n {children}\n </ScrollContext.Provider>\n );\n};\n\n/**\n * Вызывает функцию effect, до блокировки прокрутки\n * @param effect функция, которая может возвращать функцию очистки\n * @param deps effect обновится только при изменении значений в списке.\n */\nexport const useScrollLockEffect = (\n effect: React.EffectCallback,\n deps: React.DependencyList\n) => {\n const destructorRef = React.useRef<ReturnType<React.EffectCallback>>(noop);\n const { isScrollLock, beforeScrollLockFnSetRef } = useScroll();\n\n // Изменяем effectCallback только при изменении deps\n const effectCallback = React.useCallback(() => {\n destructorRef.current = effect();\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, deps);\n\n // Добавляем effectCallback в список функций, которые необходимо вызвать\n // до блокировки\n React.useEffect(() => {\n const beforeSet = beforeScrollLockFnSetRef?.current;\n if (!beforeSet) {\n return noop;\n }\n\n beforeSet.add(effectCallback);\n\n return () => {\n beforeSet.delete(effectCallback);\n };\n }, [beforeScrollLockFnSetRef, effectCallback]);\n\n // Вызываем сбрасывающую функцию, после отключения блокировки\n React.useEffect(() => {\n if (!isScrollLock && destructorRef.current) {\n destructorRef.current();\n }\n }, [isScrollLock]);\n};\n\nexport const useScrollLock = (enabled = true) => {\n const { enableScrollLock, disableScrollLock } = useScroll();\n useIsomorphicLayoutEffect(() => {\n if (enabled) {\n enableScrollLock();\n return disableScrollLock;\n }\n return noop;\n }, [enableScrollLock, disableScrollLock, enabled]);\n};\n"],"file":"ScrollContext.js"}
|
|
@@ -4,4 +4,7 @@ export interface AppearanceProviderProps {
|
|
|
4
4
|
appearance?: AppearanceType;
|
|
5
5
|
}
|
|
6
6
|
export declare const generateVKUITokensClassName: (platform: string, appearance: string) => string;
|
|
7
|
+
/**
|
|
8
|
+
* @see https://vkcom.github.io/VKUI/#/AppearanceProvider
|
|
9
|
+
*/
|
|
7
10
|
export declare const AppearanceProvider: React.FC<AppearanceProviderProps>;
|