@vkontakte/vkui 5.3.2 → 5.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/Accordion/Accordion.d.ts +2 -2
- package/dist/cjs/components/Accordion/Accordion.js.map +1 -1
- package/dist/cjs/components/Accordion/AccordionSummary.d.ts +1 -1
- package/dist/cjs/components/Accordion/AccordionSummary.js.map +1 -1
- package/dist/cjs/components/ActionSheet/types.d.ts +1 -1
- package/dist/cjs/components/ActionSheet/types.js.map +1 -1
- package/dist/cjs/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts +14 -0
- package/dist/cjs/components/{WriteBarIcon/WriteBarIconRenderer.js → AdaptiveIconRenderer/AdaptiveIconRenderer.js} +4 -4
- package/dist/cjs/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -0
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRootPortal.d.ts +3 -3
- package/dist/cjs/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/cjs/components/AppRoot/ScrollContext.d.ts +2 -2
- package/dist/cjs/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cjs/components/Button/Button.d.ts +1 -0
- package/dist/cjs/components/Button/Button.js +2 -2
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/Card/Card.js +1 -3
- package/dist/cjs/components/Card/Card.js.map +1 -1
- package/dist/cjs/components/CardGrid/CardGrid.js +4 -4
- package/dist/cjs/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.d.ts +4 -2
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +10 -6
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/cjs/components/Checkbox/Checkbox.d.ts +2 -1
- package/dist/cjs/components/Checkbox/Checkbox.js +12 -8
- package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cjs/components/ChipsSelect/ChipsSelect.d.ts +4 -0
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +3 -2
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/Counter/Counter.js +3 -5
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +3 -0
- package/dist/cjs/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js +1 -1
- package/dist/cjs/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/Epic/ScrollSaver.d.ts +3 -3
- package/dist/cjs/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cjs/components/File/File.js +4 -3
- package/dist/cjs/components/File/File.js.map +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cjs/components/FocusVisible/FocusVisible.d.ts +4 -2
- package/dist/cjs/components/FocusVisible/FocusVisible.js +4 -3
- package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.js +10 -1
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.d.ts +3 -1
- package/dist/cjs/components/FormItem/FormItem.js +2 -1
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/Group/Group.d.ts +5 -3
- package/dist/cjs/components/Group/Group.js +2 -2
- package/dist/cjs/components/Group/Group.js.map +1 -1
- package/dist/cjs/components/Header/Header.js +20 -16
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +5 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +4 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +6 -2
- package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cjs/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/dist/cjs/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.d.ts +3 -3
- package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/LocaleProvider/LocaleProvider.d.ts +2 -2
- package/dist/cjs/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.d.ts +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.js +19 -3
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPageContext.d.ts +5 -0
- package/dist/cjs/components/{Typography/types.js → ModalPage/ModalPageContext.js} +8 -1
- package/dist/cjs/components/ModalPage/ModalPageContext.js.map +1 -0
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +6 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.d.ts +2 -27
- package/dist/cjs/components/ModalRoot/ModalRoot.js +13 -22
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.d.ts +2 -21
- package/dist/cjs/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.d.ts +3 -28
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +145 -219
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/ModalRoot/types.d.ts +28 -0
- package/dist/cjs/components/ModalRoot/types.js.map +1 -1
- package/dist/cjs/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/cjs/components/ModalRoot/useModalManager.js +3 -3
- package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.d.ts +6 -2
- package/dist/cjs/components/NativeSelect/NativeSelect.js +6 -3
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.js +2 -2
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.d.ts +11 -2
- package/dist/cjs/components/PanelHeader/PanelHeader.js +17 -7
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/PlatformProvider/PlatformProvider.d.ts +1 -1
- package/dist/cjs/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cjs/components/Popover/Popover.d.ts +3 -2
- package/dist/cjs/components/Popover/Popover.js +5 -3
- package/dist/cjs/components/Popover/Popover.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/PullToRefresh/PullToRefresh.d.ts +3 -4
- package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cjs/components/Radio/Radio.d.ts +2 -1
- package/dist/cjs/components/Radio/Radio.js +14 -8
- package/dist/cjs/components/Radio/Radio.js.map +1 -1
- package/dist/cjs/components/Removable/Removable.d.ts +7 -2
- package/dist/cjs/components/Removable/Removable.js +4 -3
- package/dist/cjs/components/Removable/Removable.js.map +1 -1
- package/dist/cjs/components/Root/Root.js.map +1 -1
- package/dist/cjs/components/Search/Search.d.ts +3 -1
- package/dist/cjs/components/Search/Search.js +42 -57
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +5 -3
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +8 -4
- package/dist/cjs/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SelectTypography/SelectTypography.d.ts +2 -3
- package/dist/cjs/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.js +8 -5
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/Spacing/Spacing.d.ts +2 -2
- package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.js +1 -0
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +1 -3
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.d.ts +4 -5
- package/dist/cjs/components/Switch/Switch.js +12 -8
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.js +2 -4
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.d.ts +2 -3
- package/dist/cjs/components/Tappable/Tappable.js +1 -0
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.d.ts +2 -2
- package/dist/cjs/components/Typography/Caption/Caption.js +10 -13
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Footnote/Footnote.d.ts +2 -2
- package/dist/cjs/components/Typography/Footnote/Footnote.js +10 -13
- package/dist/cjs/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.d.ts +3 -4
- package/dist/cjs/components/Typography/Headline/Headline.js +9 -12
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Paragraph/Paragraph.d.ts +3 -5
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js +8 -13
- package/dist/cjs/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/dist/cjs/components/Typography/Subhead/Subhead.js +9 -12
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.d.ts +3 -5
- package/dist/cjs/components/Typography/Text/Text.js +8 -13
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.d.ts +2 -2
- package/dist/cjs/components/Typography/Title/Title.js +10 -13
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/Typography/Typography.d.ts +16 -0
- package/dist/cjs/components/Typography/Typography.js +35 -0
- package/dist/cjs/components/Typography/Typography.js.map +1 -0
- package/dist/cjs/components/UsersStack/UsersStack.d.ts +2 -2
- package/dist/cjs/components/UsersStack/UsersStack.js +2 -1
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/View.js +1 -1
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.js +1 -1
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.d.ts +14 -0
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js +29 -0
- package/dist/cjs/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
- package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.d.ts +4 -4
- package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js +5 -0
- package/dist/cjs/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cjs/helpers/getPlatformClassName.js +1 -1
- package/dist/cjs/helpers/getPlatformClassName.js.map +1 -1
- package/dist/cjs/hooks/useFocusWithin.d.ts +2 -0
- package/dist/cjs/hooks/useFocusWithin.js +38 -0
- package/dist/cjs/hooks/useFocusWithin.js.map +1 -0
- package/dist/cjs/hooks/useId.js +1 -1
- package/dist/cjs/hooks/useId.js.map +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/dist/cjs/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cjs/index.d.ts +4 -2
- package/dist/cjs/index.js +8 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/utils.js +2 -2
- package/dist/cjs/lib/utils.js.map +1 -1
- package/dist/components/Accordion/Accordion.d.ts +2 -2
- package/dist/components/Accordion/Accordion.js +2 -2
- package/dist/components/Accordion/Accordion.js.map +1 -1
- package/dist/components/Accordion/AccordionSummary.d.ts +1 -1
- package/dist/components/Accordion/AccordionSummary.js +1 -1
- package/dist/components/Accordion/AccordionSummary.js.map +1 -1
- package/dist/components/ActionSheet/types.d.ts +1 -1
- package/dist/components/ActionSheet/types.js.map +1 -1
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts +14 -0
- package/dist/components/{WriteBarIcon/WriteBarIconRenderer.js → AdaptiveIconRenderer/AdaptiveIconRenderer.js} +5 -2
- package/dist/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -0
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRootPortal.d.ts +3 -3
- package/dist/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/components/AppRoot/ScrollContext.d.ts +2 -2
- package/dist/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/components/Button/Button.d.ts +1 -0
- package/dist/components/Button/Button.js +2 -2
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/Card/Card.js +1 -3
- package/dist/components/Card/Card.js.map +1 -1
- package/dist/components/CardGrid/CardGrid.js +4 -4
- package/dist/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/components/Cell/CellCheckbox/CellCheckbox.d.ts +4 -2
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js +10 -6
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/components/Checkbox/Checkbox.d.ts +2 -1
- package/dist/components/Checkbox/Checkbox.js +12 -8
- package/dist/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -0
- package/dist/components/ChipsSelect/ChipsSelect.js +3 -2
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/Counter/Counter.js +4 -6
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +3 -0
- package/dist/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.js +1 -1
- package/dist/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/Epic/ScrollSaver.d.ts +3 -3
- package/dist/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/components/File/File.js +4 -3
- package/dist/components/File/File.js.map +1 -1
- package/dist/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/components/FocusVisible/FocusVisible.d.ts +4 -2
- package/dist/components/FocusVisible/FocusVisible.js +4 -3
- package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/components/FormField/FormField.js +10 -1
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.d.ts +3 -1
- package/dist/components/FormItem/FormItem.js +2 -1
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/Group/Group.d.ts +5 -3
- package/dist/components/Group/Group.js +5 -3
- package/dist/components/Group/Group.js.map +1 -1
- package/dist/components/Header/Header.js +20 -16
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +5 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js +4 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -1
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +6 -2
- package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/dist/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/components/IconButton/IconButton.d.ts +3 -3
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/LocaleProvider/LocaleProvider.d.ts +2 -2
- package/dist/components/LocaleProvider/LocaleProvider.js +2 -2
- package/dist/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +1 -1
- package/dist/components/ModalPage/ModalPage.js +19 -3
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPage/ModalPageContext.d.ts +5 -0
- package/dist/components/ModalPage/ModalPageContext.js +4 -0
- package/dist/components/ModalPage/ModalPageContext.js.map +1 -0
- package/dist/components/ModalPageHeader/ModalPageHeader.js +6 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.d.ts +2 -27
- package/dist/components/ModalRoot/ModalRoot.js +13 -22
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootAdaptive.d.ts +2 -21
- package/dist/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.d.ts +3 -28
- package/dist/components/ModalRoot/ModalRootDesktop.js +149 -223
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +28 -0
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/components/ModalRoot/useModalManager.js +3 -3
- package/dist/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +6 -2
- package/dist/components/NativeSelect/NativeSelect.js +6 -3
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Panel/Panel.js +2 -2
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.d.ts +11 -2
- package/dist/components/PanelHeader/PanelHeader.js +17 -7
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.d.ts +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/components/Popover/Popover.d.ts +3 -2
- package/dist/components/Popover/Popover.js +5 -3
- package/dist/components/Popover/Popover.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.js +1 -0
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/PullToRefresh/PullToRefresh.d.ts +3 -4
- package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/components/Radio/Radio.d.ts +2 -1
- package/dist/components/Radio/Radio.js +14 -8
- package/dist/components/Radio/Radio.js.map +1 -1
- package/dist/components/Removable/Removable.d.ts +7 -2
- package/dist/components/Removable/Removable.js +4 -3
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/Root/Root.js.map +1 -1
- package/dist/components/Search/Search.d.ts +3 -1
- package/dist/components/Search/Search.js +42 -57
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +5 -3
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +8 -4
- package/dist/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SelectTypography/SelectTypography.d.ts +2 -3
- package/dist/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.js +8 -5
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/Spacing/Spacing.d.ts +2 -2
- package/dist/components/Spacing/Spacing.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.js +1 -0
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -3
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.d.ts +4 -5
- package/dist/components/Switch/Switch.js +12 -8
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.js +2 -4
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.js +1 -1
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +2 -3
- package/dist/components/Tappable/Tappable.js +1 -0
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.d.ts +2 -2
- package/dist/components/Typography/Caption/Caption.js +10 -13
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Footnote/Footnote.d.ts +2 -2
- package/dist/components/Typography/Footnote/Footnote.js +10 -13
- package/dist/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.d.ts +3 -4
- package/dist/components/Typography/Headline/Headline.js +9 -12
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Paragraph/Paragraph.d.ts +3 -5
- package/dist/components/Typography/Paragraph/Paragraph.js +8 -13
- package/dist/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/dist/components/Typography/Subhead/Subhead.js +9 -12
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.d.ts +3 -5
- package/dist/components/Typography/Text/Text.js +8 -13
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts +2 -2
- package/dist/components/Typography/Title/Title.js +10 -13
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/Typography/Typography.d.ts +16 -0
- package/dist/components/Typography/Typography.js +24 -0
- package/dist/components/Typography/Typography.js.map +1 -0
- package/dist/components/UsersStack/UsersStack.d.ts +2 -2
- package/dist/components/UsersStack/UsersStack.js +2 -1
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/View.js +1 -1
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.js +1 -1
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/VisuallyHidden/VisuallyHidden.d.ts +14 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js +25 -0
- package/dist/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
- package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.d.ts +4 -4
- package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js +9 -4
- package/dist/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
- package/dist/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/components.css +49 -49
- package/dist/components.css.map +1 -1
- package/dist/components.js.tmp +3803 -3693
- package/dist/cssm/components/Accordion/Accordion.d.ts +2 -2
- package/dist/cssm/components/Accordion/Accordion.js +2 -2
- package/dist/cssm/components/Accordion/Accordion.js.map +1 -1
- package/dist/cssm/components/Accordion/Accordion.module.css +13 -1
- package/dist/cssm/components/Accordion/AccordionSummary.d.ts +1 -1
- package/dist/cssm/components/Accordion/AccordionSummary.js +1 -1
- package/dist/cssm/components/Accordion/AccordionSummary.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.module.css +115 -1
- package/dist/cssm/components/ActionSheet/types.d.ts +1 -1
- package/dist/cssm/components/ActionSheet/types.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.module.css +241 -1
- package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.d.ts +14 -0
- package/dist/cssm/components/{WriteBarIcon/WriteBarIconRenderer.js → AdaptiveIconRenderer/AdaptiveIconRenderer.js} +5 -2
- package/dist/cssm/components/AdaptiveIconRenderer/AdaptiveIconRenderer.js.map +1 -0
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.module.css +287 -1
- package/dist/cssm/components/AppRoot/AppRoot.module.css +23 -1
- package/dist/cssm/components/AppRoot/AppRootPortal.d.ts +3 -3
- package/dist/cssm/components/AppRoot/AppRootPortal.js.map +1 -1
- package/dist/cssm/components/AppRoot/ScrollContext.d.ts +2 -2
- package/dist/cssm/components/AppRoot/ScrollContext.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.module.css +55 -1
- package/dist/cssm/components/Avatar/AvatarBadge/AvatarBadge.module.css +29 -1
- package/dist/cssm/components/Badge/Badge.module.css +27 -1
- package/dist/cssm/components/Banner/Banner.module.css +167 -1
- package/dist/cssm/components/BaseGallery/BaseGallery.module.css +82 -1
- package/dist/cssm/components/Button/Button.d.ts +1 -0
- package/dist/cssm/components/Button/Button.js +2 -1
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/Button/Button.module.css +676 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.module.css +77 -1
- package/dist/cssm/components/Calendar/Calendar.module.css +30 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.module.css +84 -1
- package/dist/cssm/components/CalendarDays/CalendarDays.module.css +31 -1
- package/dist/cssm/components/CalendarHeader/CalendarHeader.module.css +41 -1
- package/dist/cssm/components/CalendarRange/CalendarRange.module.css +26 -1
- package/dist/cssm/components/CalendarTime/CalendarTime.module.css +19 -1
- package/dist/cssm/components/Card/Card.js +1 -3
- package/dist/cssm/components/Card/Card.js.map +1 -1
- package/dist/cssm/components/Card/Card.module.css +131 -3
- package/dist/cssm/components/CardGrid/CardGrid.js +4 -4
- package/dist/cssm/components/CardGrid/CardGrid.js.map +1 -1
- package/dist/cssm/components/CardGrid/CardGrid.module.css +59 -1
- package/dist/cssm/components/CardScroll/CardScroll.module.css +64 -1
- package/dist/cssm/components/Cell/Cell.module.css +63 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.d.ts +4 -2
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +7 -5
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.module.css +13 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.module.css +4 -1
- package/dist/cssm/components/CellButton/CellButton.module.css +57 -1
- package/dist/cssm/components/Checkbox/Checkbox.d.ts +2 -1
- package/dist/cssm/components/Checkbox/Checkbox.js +10 -7
- package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
- package/dist/cssm/components/Checkbox/Checkbox.module.css +172 -1
- package/dist/cssm/components/Chip/Chip.module.css +67 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.module.css +3 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.module.css +115 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -0
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +2 -2
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.module.css +27 -1
- package/dist/cssm/components/ContentCard/ContentCard.module.css +31 -1
- package/dist/cssm/components/Counter/Counter.js +4 -6
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.module.css +72 -3
- package/dist/cssm/components/CustomScrollView/CustomScrollView.module.css +86 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +3 -0
- package/dist/cssm/components/CustomSelect/CustomSelect.js +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.module.css +58 -1
- package/dist/cssm/components/CustomSelectDropdown/CustomSelectDropdown.module.css +43 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.js.map +1 -1
- package/dist/cssm/components/CustomSelectOption/CustomSelectOption.module.css +81 -1
- package/dist/cssm/components/DateInput/DateInput.module.css +30 -1
- package/dist/cssm/components/DatePicker/DatePicker.module.css +30 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.module.css +26 -1
- package/dist/cssm/components/Div/Div.module.css +4 -1
- package/dist/cssm/components/Epic/Epic.module.css +4 -1
- package/dist/cssm/components/Epic/ScrollSaver.d.ts +3 -3
- package/dist/cssm/components/Epic/ScrollSaver.js.map +1 -1
- package/dist/cssm/components/File/File.js +4 -3
- package/dist/cssm/components/File/File.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
- package/dist/cssm/components/FixedLayout/FixedLayout.module.css +58 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.d.ts +4 -2
- package/dist/cssm/components/FocusVisible/FocusVisible.js +4 -3
- package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.module.css +104 -1
- package/dist/cssm/components/Footer/Footer.module.css +9 -1
- package/dist/cssm/components/FormField/FormField.js +10 -1
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.module.css +211 -1
- package/dist/cssm/components/FormItem/FormItem.d.ts +3 -1
- package/dist/cssm/components/FormItem/FormItem.js +2 -1
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.module.css +104 -1
- package/dist/cssm/components/FormLayout/FormLayout.module.css +18 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +3 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +2 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.module.css +61 -1
- package/dist/cssm/components/FormStatus/FormStatus.module.css +3 -1
- package/dist/cssm/components/Gradient/Gradient.module.css +23 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.module.css +37 -1
- package/dist/cssm/components/GridAvatar/GridAvatarBadge/GridAvatarBadge.module.css +9 -1
- package/dist/cssm/components/Group/Group.d.ts +5 -3
- package/dist/cssm/components/Group/Group.js +5 -3
- package/dist/cssm/components/Group/Group.js.map +1 -1
- package/dist/cssm/components/Group/Group.module.css +166 -1
- package/dist/cssm/components/Header/Header.js +23 -18
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/Header/Header.module.css +207 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.module.css +79 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.d.ts +5 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +3 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.module.css +59 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.d.ts +2 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +5 -2
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.module.css +67 -1
- package/dist/cssm/components/HoverPopper/HoverPopper.d.ts +1 -1
- package/dist/cssm/components/HoverPopper/HoverPopper.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.d.ts +3 -3
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.module.css +152 -1
- package/dist/cssm/components/Image/ImageBadge/ImageBadge.module.css +10 -1
- package/dist/cssm/components/ImageBase/ImageBase.module.css +131 -1
- package/dist/cssm/components/ImageBase/ImageBaseBadge/ImageBaseBadge.module.css +28 -1
- package/dist/cssm/components/ImageBase/ImageBaseOverlay/ImageBaseOverlay.module.css +36 -1
- package/dist/cssm/components/InfoRow/InfoRow.module.css +17 -1
- package/dist/cssm/components/Input/Input.module.css +101 -1
- package/dist/cssm/components/InputLike/InputLike.module.css +31 -1
- package/dist/cssm/components/Link/Link.module.css +43 -1
- package/dist/cssm/components/List/List.module.css +3 -1
- package/dist/cssm/components/LocaleProvider/LocaleProvider.d.ts +2 -2
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js +2 -2
- package/dist/cssm/components/LocaleProvider/LocaleProvider.js.map +1 -1
- package/dist/cssm/components/MiniInfoCell/MiniInfoCell.module.css +78 -1
- package/dist/cssm/components/ModalCard/ModalCard.module.css +62 -1
- package/dist/cssm/components/ModalCardBase/ModalCardBase.module.css +102 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.module.css +38 -1
- package/dist/cssm/components/ModalPage/ModalPage.d.ts +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +17 -3
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.module.css +151 -1
- package/dist/cssm/components/ModalPage/ModalPageContext.d.ts +5 -0
- package/dist/cssm/components/ModalPage/ModalPageContext.js +4 -0
- package/dist/cssm/components/ModalPage/ModalPageContext.js.map +1 -0
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +6 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.module.css +18 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.d.ts +2 -27
- package/dist/cssm/components/ModalRoot/ModalRoot.js +12 -18
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.module.css +65 -1
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.d.ts +2 -21
- package/dist/cssm/components/ModalRoot/ModalRootAdaptive.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.d.ts +3 -28
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +106 -125
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/ModalRoot/types.d.ts +28 -0
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.d.ts +6 -5
- package/dist/cssm/components/ModalRoot/useModalManager.js +3 -3
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +6 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -3
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Pagination/Pagination.module.css +83 -1
- package/dist/cssm/components/Panel/Panel.js +2 -2
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.module.css +177 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.d.ts +11 -2
- package/dist/cssm/components/PanelHeader/PanelHeader.js +16 -7
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.module.css +321 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.module.css +111 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.module.css +96 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -3
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.module.css +169 -1
- package/dist/cssm/components/Placeholder/Placeholder.module.css +41 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.d.ts +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js +1 -1
- package/dist/cssm/components/PlatformProvider/PlatformProvider.js.map +1 -1
- package/dist/cssm/components/PopoutRoot/PopoutRoot.module.css +32 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
- package/dist/cssm/components/PopoutWrapper/PopoutWrapper.module.css +96 -1
- package/dist/cssm/components/Popover/Popover.d.ts +3 -2
- package/dist/cssm/components/Popover/Popover.js +3 -2
- package/dist/cssm/components/Popover/Popover.js.map +1 -1
- package/dist/cssm/components/Popover/Popover.module.css +28 -1
- package/dist/cssm/components/Popper/Popper.module.css +16 -1
- package/dist/cssm/components/PopperArrow/PopperArrow.module.css +23 -1
- package/dist/cssm/components/Progress/Progress.module.css +12 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -0
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.module.css +39 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.d.ts +3 -4
- package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
- package/dist/cssm/components/PullToRefresh/PullToRefresh.module.css +101 -1
- package/dist/cssm/components/Radio/Radio.d.ts +2 -1
- package/dist/cssm/components/Radio/Radio.js +11 -7
- package/dist/cssm/components/Radio/Radio.js.map +1 -1
- package/dist/cssm/components/Radio/Radio.module.css +140 -1
- package/dist/cssm/components/RadioGroup/RadioGroup.module.css +13 -1
- package/dist/cssm/components/Removable/Removable.d.ts +7 -2
- package/dist/cssm/components/Removable/Removable.js +2 -2
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.module.css +153 -1
- package/dist/cssm/components/RichCell/RichCell.module.css +144 -1
- package/dist/cssm/components/RichCell/RichCellIcon/RichCellIcon.module.css +11 -1
- package/dist/cssm/components/RichTooltip/RichTooltip.module.css +57 -1
- package/dist/cssm/components/Root/Root.js +4 -4
- package/dist/cssm/components/Root/Root.js.map +1 -1
- package/dist/cssm/components/Root/Root.module.css +136 -1
- package/dist/cssm/components/ScreenSpinner/ScreenSpinner.module.css +66 -1
- package/dist/cssm/components/Search/Search.d.ts +3 -1
- package/dist/cssm/components/Search/Search.js +38 -54
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/Search/Search.module.css +156 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControl.module.css +64 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.d.ts +5 -3
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js +7 -4
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.js.map +1 -1
- package/dist/cssm/components/SegmentedControl/SegmentedControlOption/SegmentedControlOption.module.css +52 -1
- package/dist/cssm/components/Select/Select.module.css +87 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SelectTypography/SelectTypography.d.ts +2 -3
- package/dist/cssm/components/SelectTypography/SelectTypography.js.map +1 -1
- package/dist/cssm/components/SelectTypography/SelectTypography.module.css +30 -1
- package/dist/cssm/components/Separator/Separator.module.css +48 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js +8 -5
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.module.css +223 -1
- package/dist/cssm/components/Slider/Slider.module.css +134 -1
- package/dist/cssm/components/Snackbar/Snackbar.module.css +165 -1
- package/dist/cssm/components/Spacing/Spacing.d.ts +2 -2
- package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
- package/dist/cssm/components/Spacing/Spacing.module.css +4 -1
- package/dist/cssm/components/Spinner/Spinner.module.css +36 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +1 -0
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.module.css +51 -1
- package/dist/cssm/components/SplitLayout/SplitLayout.module.css +29 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.module.css +16 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -3
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.module.css +166 -1
- package/dist/cssm/components/Switch/Switch.d.ts +4 -5
- package/dist/cssm/components/Switch/Switch.js +11 -8
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.module.css +200 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +2 -4
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.module.css +34 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.module.css +118 -1
- package/dist/cssm/components/Tabs/Tabs.module.css +62 -1
- package/dist/cssm/components/TabsItem/TabsItem.module.css +229 -1
- package/dist/cssm/components/Tappable/Tappable.d.ts +2 -3
- package/dist/cssm/components/Tappable/Tappable.js +1 -0
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.module.css +142 -1
- package/dist/cssm/components/TextTooltip/TextTooltip.module.css +58 -1
- package/dist/cssm/components/Textarea/Textarea.module.css +87 -1
- package/dist/cssm/components/Tooltip/Tooltip.module.css +57 -1
- package/dist/cssm/components/Typography/Caption/Caption.d.ts +2 -2
- package/dist/cssm/components/Typography/Caption/Caption.js +9 -10
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.module.css +45 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.d.ts +2 -2
- package/dist/cssm/components/Typography/Footnote/Footnote.js +7 -10
- package/dist/cssm/components/Typography/Footnote/Footnote.js.map +1 -1
- package/dist/cssm/components/Typography/Footnote/Footnote.module.css +14 -1
- package/dist/cssm/components/Typography/Headline/Headline.d.ts +3 -4
- package/dist/cssm/components/Typography/Headline/Headline.js +9 -10
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.module.css +48 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.d.ts +3 -5
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js +8 -10
- package/dist/cssm/components/Typography/Paragraph/Paragraph.js.map +1 -1
- package/dist/cssm/components/Typography/Paragraph/Paragraph.module.css +6 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/dist/cssm/components/Typography/Subhead/Subhead.js +8 -9
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.module.css +18 -1
- package/dist/cssm/components/Typography/Text/Text.d.ts +3 -5
- package/dist/cssm/components/Typography/Text/Text.js +8 -10
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.module.css +29 -1
- package/dist/cssm/components/Typography/Title/Title.d.ts +2 -2
- package/dist/cssm/components/Typography/Title/Title.js +9 -10
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.module.css +20 -1
- package/dist/cssm/components/Typography/Typography.d.ts +16 -0
- package/dist/cssm/components/Typography/Typography.js +14 -0
- package/dist/cssm/components/Typography/Typography.js.map +1 -0
- package/dist/cssm/components/Typography/Typography.module.css +18 -0
- package/dist/cssm/components/UsersStack/UsersStack.d.ts +2 -2
- package/dist/cssm/components/UsersStack/UsersStack.js +2 -1
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.module.css +77 -1
- package/dist/cssm/components/View/View.js +6 -7
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/View.module.css +228 -1
- package/dist/cssm/components/View/ViewInfinite.js +6 -7
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.d.ts +14 -0
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js +19 -0
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.js.map +1 -0
- package/dist/cssm/components/VisuallyHidden/VisuallyHidden.module.css +10 -0
- package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.d.ts +4 -4
- package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js +9 -4
- package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.js.map +1 -1
- package/dist/cssm/components/VisuallyHiddenInput/VisuallyHiddenInput.module.css +10 -1
- package/dist/cssm/components/WriteBar/WriteBar.module.css +119 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +2 -2
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIcon.module.css +66 -1
- package/dist/cssm/helpers/getPlatformClassName.js +1 -1
- package/dist/cssm/helpers/getPlatformClassName.js.map +1 -1
- package/dist/cssm/hooks/useFocusWithin.d.ts +2 -0
- package/dist/cssm/hooks/useFocusWithin.js +26 -0
- package/dist/cssm/hooks/useFocusWithin.js.map +1 -0
- package/dist/cssm/hooks/useId.js +1 -1
- package/dist/cssm/hooks/useId.js.map +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/dist/cssm/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/cssm/index.d.ts +4 -2
- package/dist/cssm/index.js +2 -1
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/utils.js +2 -2
- package/dist/cssm/lib/utils.js.map +1 -1
- package/dist/cssm/styles/adaptivity.module.css +87 -1
- package/dist/cssm/styles/common.css +36 -1
- package/dist/cssm/styles/constants.css +86 -1
- package/dist/cssm/styles/themes.css +1039 -1
- package/dist/helpers/getPlatformClassName.js +1 -1
- package/dist/helpers/getPlatformClassName.js.map +1 -1
- package/dist/hooks/useFocusWithin.d.ts +2 -0
- package/dist/hooks/useFocusWithin.js +27 -0
- package/dist/hooks/useFocusWithin.js.map +1 -0
- package/dist/hooks/useId.js +1 -1
- package/dist/hooks/useId.js.map +1 -1
- package/dist/hooks/useWaitTransitionFinish.d.ts +1 -1
- package/dist/hooks/useWaitTransitionFinish.js.map +1 -1
- package/dist/index.d.ts +4 -2
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/utils.js +2 -2
- package/dist/lib/utils.js.map +1 -1
- package/dist/vkui.css +50 -50
- package/dist/vkui.css.map +1 -1
- package/dist/vkui.js.tmp +3803 -3693
- package/package.json +24 -17
- package/dist/cjs/components/Typography/types.d.ts +0 -11
- package/dist/cjs/components/Typography/types.js.map +0 -1
- package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.d.ts +0 -10
- package/dist/cjs/components/WriteBarIcon/WriteBarIconRenderer.js.map +0 -1
- package/dist/components/Typography/types.d.ts +0 -11
- package/dist/components/Typography/types.js +0 -3
- package/dist/components/Typography/types.js.map +0 -1
- package/dist/components/WriteBarIcon/WriteBarIconRenderer.d.ts +0 -10
- package/dist/components/WriteBarIcon/WriteBarIconRenderer.js.map +0 -1
- package/dist/cssm/components/Typography/types.d.ts +0 -11
- package/dist/cssm/components/Typography/types.js +0 -3
- package/dist/cssm/components/Typography/types.js.map +0 -1
- package/dist/cssm/components/View/ViewIOS.module.css +0 -1
- package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.d.ts +0 -10
- package/dist/cssm/components/WriteBarIcon/WriteBarIconRenderer.js.map +0 -1
- package/dist/cssm/styles/animations.css +0 -1
|
@@ -1,239 +1,165 @@
|
|
|
1
|
-
import _assert_this_initialized from "@swc/helpers/src/_assert_this_initialized.mjs";
|
|
2
|
-
import _class_call_check from "@swc/helpers/src/_class_call_check.mjs";
|
|
3
|
-
import _create_class from "@swc/helpers/src/_create_class.mjs";
|
|
4
|
-
import _define_property from "@swc/helpers/src/_define_property.mjs";
|
|
5
|
-
import _inherits from "@swc/helpers/src/_inherits.mjs";
|
|
6
1
|
import _object_without_properties from "@swc/helpers/src/_object_without_properties.mjs";
|
|
7
|
-
import _create_super from "@swc/helpers/src/_create_super.mjs";
|
|
8
2
|
import * as React from "react";
|
|
9
|
-
import { classNames } from "@vkontakte/vkjs";
|
|
3
|
+
import { classNames, noop } from "@vkontakte/vkjs";
|
|
10
4
|
import { clamp } from "../../helpers/math";
|
|
11
|
-
import {
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
5
|
+
import { useObjectMemo } from "../../hooks/useObjectMemo";
|
|
6
|
+
import { usePrevious } from "../../hooks/usePrevious";
|
|
7
|
+
import { useWaitTransitionFinish } from "../../hooks/useWaitTransitionFinish";
|
|
8
|
+
import { useDOM } from "../../lib/dom";
|
|
14
9
|
import { getNavId } from "../../lib/getNavId";
|
|
15
10
|
import { Platform } from "../../lib/platform";
|
|
16
|
-
import { transitionEvent } from "../../lib/supportEvents";
|
|
17
11
|
import { warnOnce } from "../../lib/warnOnce";
|
|
18
|
-
import {
|
|
12
|
+
import { useConfigProvider, WebviewType } from "../ConfigProvider/ConfigProviderContext";
|
|
19
13
|
import { FocusTrap } from "../FocusTrap/FocusTrap";
|
|
20
14
|
import { ModalRootContext } from "./ModalRootContext";
|
|
21
|
-
import {
|
|
15
|
+
import { useModalManager } from "./useModalManager";
|
|
22
16
|
var warn = warnOnce("ModalRoot");
|
|
23
|
-
var
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
var
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
registerModal: function(_param) {
|
|
42
|
-
var id = _param.id, data = _object_without_properties(_param, [
|
|
43
|
-
"id"
|
|
44
|
-
]);
|
|
45
|
-
return Object.assign((_this_getModalState = _this.getModalState(id)) !== null && _this_getModalState !== void 0 ? _this_getModalState : {}, data);
|
|
46
|
-
},
|
|
47
|
-
onClose: function() {
|
|
48
|
-
return _this.props.onExit();
|
|
49
|
-
},
|
|
50
|
-
isInsideModal: true
|
|
51
|
-
};
|
|
52
|
-
return _this;
|
|
53
|
-
}
|
|
54
|
-
_create_class(ModalRootDesktopComponent, [
|
|
55
|
-
{
|
|
56
|
-
key: "timeout",
|
|
57
|
-
get: function get() {
|
|
58
|
-
return this.props.platform === Platform.IOS ? 400 : 320;
|
|
59
|
-
}
|
|
60
|
-
},
|
|
61
|
-
{
|
|
62
|
-
key: "modals",
|
|
63
|
-
get: function get() {
|
|
64
|
-
return React.Children.toArray(this.props.children);
|
|
65
|
-
}
|
|
66
|
-
},
|
|
67
|
-
{
|
|
68
|
-
key: "getModalState",
|
|
69
|
-
value: function getModalState(id) {
|
|
70
|
-
if (id === null) {
|
|
71
|
-
return undefined;
|
|
72
|
-
}
|
|
73
|
-
return this.props.getModalState(id);
|
|
74
|
-
}
|
|
17
|
+
export var ModalRootDesktop = function(param) {
|
|
18
|
+
var activeModalProp = param.activeModal, children = param.children, onOpen = param.onOpen, onOpened = param.onOpened, onClose = param.onClose, onClosed = param.onClosed;
|
|
19
|
+
var maskElementRef = React.useRef(null);
|
|
20
|
+
var maskAnimationFrame = React.useRef(undefined);
|
|
21
|
+
var restoreFocusTo = React.useRef(undefined);
|
|
22
|
+
var document = useDOM().document;
|
|
23
|
+
var _useConfigProvider = useConfigProvider(), webviewType = _useConfigProvider.webviewType, platform = _useConfigProvider.platform;
|
|
24
|
+
var _useModalManager = useModalManager(activeModalProp, children, onOpen, onOpened, onClose, onClosed, noop), activeModal = _useModalManager.activeModal, exitingModal = _useModalManager.exitingModal, onExit = _useModalManager.onExit, getModalState = _useModalManager.getModalState, enteringModal = _useModalManager.enteringModal, onEnter = _useModalManager.onEnter, onEntered = _useModalManager.onEntered, onExited = _useModalManager.onExited, history = _useModalManager.history, delayEnter = _useModalManager.delayEnter;
|
|
25
|
+
var waitTransitionFinish = useWaitTransitionFinish().waitTransitionFinish;
|
|
26
|
+
var prevProps = usePrevious({
|
|
27
|
+
exitingModal: exitingModal,
|
|
28
|
+
enteringModal: enteringModal,
|
|
29
|
+
activeModal: activeModal
|
|
30
|
+
});
|
|
31
|
+
var _getModalState;
|
|
32
|
+
var modalRootContext = useObjectMemo({
|
|
33
|
+
updateModalHeight: function() {
|
|
34
|
+
return undefined;
|
|
75
35
|
},
|
|
76
|
-
{
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
this.closeModal(this.props.exitingModal);
|
|
82
|
-
}
|
|
83
|
-
// transition phase 3: animate entering modal
|
|
84
|
-
if (this.props.enteringModal && this.props.enteringModal !== prevProps.enteringModal) {
|
|
85
|
-
this.openModal(prevProps);
|
|
86
|
-
}
|
|
87
|
-
// focus restoration
|
|
88
|
-
if (this.props.activeModal && !prevProps.activeModal) {
|
|
89
|
-
var _this_props_document;
|
|
90
|
-
var _this_props_document_activeElement;
|
|
91
|
-
this.restoreFocusTo = (_this_props_document_activeElement = (_this_props_document = this.props.document) === null || _this_props_document === void 0 ? void 0 : _this_props_document.activeElement) !== null && _this_props_document_activeElement !== void 0 ? _this_props_document_activeElement : undefined;
|
|
92
|
-
}
|
|
93
|
-
if (!this.props.activeModal && !this.props.exitingModal && this.restoreFocusTo) {
|
|
94
|
-
this.restoreFocusTo.focus();
|
|
95
|
-
this.restoreFocusTo = undefined;
|
|
96
|
-
}
|
|
97
|
-
}
|
|
36
|
+
registerModal: function(_param) {
|
|
37
|
+
var id = _param.id, data = _object_without_properties(_param, [
|
|
38
|
+
"id"
|
|
39
|
+
]);
|
|
40
|
+
return Object.assign((_getModalState = getModalState(id)) !== null && _getModalState !== void 0 ? _getModalState : {}, data);
|
|
98
41
|
},
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
enteringState.innerElement.style.opacity = "1";
|
|
125
|
-
}
|
|
126
|
-
this.props.onEntered(enteringModal);
|
|
127
|
-
}
|
|
128
|
-
},
|
|
129
|
-
{
|
|
130
|
-
key: "closeModal",
|
|
131
|
-
value: function closeModal(id) {
|
|
132
|
-
var _this = this;
|
|
133
|
-
var prevModalState = this.getModalState(id);
|
|
134
|
-
if (!prevModalState) {
|
|
135
|
-
return;
|
|
136
|
-
}
|
|
137
|
-
// Анимация закрытия модального окна
|
|
138
|
-
if (!this.props.activeModal) {
|
|
139
|
-
requestAnimationFrame(function() {
|
|
140
|
-
_this.waitTransitionFinish(prevModalState, function() {
|
|
141
|
-
return _this.props.onExited(id);
|
|
142
|
-
});
|
|
143
|
-
_this.animateModalOpacity(prevModalState, false);
|
|
144
|
-
_this.setMaskOpacity(prevModalState, 0);
|
|
145
|
-
});
|
|
146
|
-
return;
|
|
147
|
-
}
|
|
148
|
-
// Переход между модальными окнами без анимации
|
|
149
|
-
this.props.onExited(id);
|
|
150
|
-
}
|
|
151
|
-
},
|
|
152
|
-
{
|
|
153
|
-
key: "waitTransitionFinish",
|
|
154
|
-
value: function waitTransitionFinish(modalState, eventHandler) {
|
|
155
|
-
if (transitionEvent.supported) {
|
|
156
|
-
var _modalState_innerElement;
|
|
157
|
-
var onceHandler = function() {
|
|
158
|
-
var _modalState_innerElement;
|
|
159
|
-
modalState === null || modalState === void 0 ? void 0 : (_modalState_innerElement = modalState.innerElement) === null || _modalState_innerElement === void 0 ? void 0 : _modalState_innerElement.removeEventListener(transitionEvent.name, onceHandler);
|
|
160
|
-
eventHandler();
|
|
161
|
-
};
|
|
162
|
-
modalState === null || modalState === void 0 ? void 0 : (_modalState_innerElement = modalState.innerElement) === null || _modalState_innerElement === void 0 ? void 0 : _modalState_innerElement.addEventListener(transitionEvent.name, onceHandler);
|
|
163
|
-
} else {
|
|
164
|
-
setTimeout(eventHandler, this.timeout);
|
|
165
|
-
}
|
|
166
|
-
}
|
|
167
|
-
},
|
|
168
|
-
{
|
|
169
|
-
/* Анимирует сдвиг модалки */ key: "animateModalOpacity",
|
|
170
|
-
value: function animateModalOpacity(modalState, display) {
|
|
171
|
-
if (modalState === null || modalState === void 0 ? void 0 : modalState.innerElement) {
|
|
172
|
-
modalState.innerElement.style.transition = "";
|
|
173
|
-
modalState.innerElement.style.transitionDelay = display && this.props.delayEnter ? "".concat(this.timeout, "ms") : "";
|
|
174
|
-
modalState.innerElement.style.opacity = display ? "1" : "0";
|
|
175
|
-
}
|
|
176
|
-
}
|
|
177
|
-
},
|
|
178
|
-
{
|
|
179
|
-
/* Устанавливает прозрачность для полупрозрачной подложки */ key: "setMaskOpacity",
|
|
180
|
-
value: function setMaskOpacity(modalState) {
|
|
181
|
-
var forceOpacity = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
|
|
182
|
-
var _this = this;
|
|
183
|
-
var _this_props_history;
|
|
184
|
-
if (forceOpacity === null && ((_this_props_history = this.props.history) === null || _this_props_history === void 0 ? void 0 : _this_props_history[0]) !== modalState.id) {
|
|
185
|
-
return;
|
|
186
|
-
}
|
|
187
|
-
if (this.maskAnimationFrame) {
|
|
188
|
-
cancelAnimationFrame(this.maskAnimationFrame);
|
|
189
|
-
}
|
|
190
|
-
this.maskAnimationFrame = requestAnimationFrame(function() {
|
|
191
|
-
if (_this.maskElementRef.current) {
|
|
192
|
-
var _modalState_translateY = modalState.translateY, translateY = _modalState_translateY === void 0 ? 0 : _modalState_translateY, _modalState_translateYCurrent = modalState.translateYCurrent, translateYCurrent = _modalState_translateYCurrent === void 0 ? 0 : _modalState_translateYCurrent;
|
|
193
|
-
var opacity = forceOpacity === null ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0 : forceOpacity;
|
|
194
|
-
_this.maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();
|
|
195
|
-
}
|
|
196
|
-
});
|
|
42
|
+
onClose: onExit,
|
|
43
|
+
isInsideModal: true
|
|
44
|
+
});
|
|
45
|
+
var timeout = platform === Platform.IOS ? 400 : 320;
|
|
46
|
+
var modals = React.Children.toArray(children);
|
|
47
|
+
/* Анимирует сдвиг модального окна */ var animateModalOpacity = function(modalState, display) {
|
|
48
|
+
if (modalState === null || modalState === void 0 ? void 0 : modalState.innerElement) {
|
|
49
|
+
modalState.innerElement.style.transition = "";
|
|
50
|
+
modalState.innerElement.style.transitionDelay = display && delayEnter ? "".concat(timeout, "ms") : "";
|
|
51
|
+
modalState.innerElement.style.opacity = display ? "1" : "0";
|
|
52
|
+
}
|
|
53
|
+
};
|
|
54
|
+
/* Устанавливает прозрачность для полупрозрачной подложки */ var setMaskOpacity = function(modalState) {
|
|
55
|
+
var forceOpacity = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : null;
|
|
56
|
+
if (forceOpacity === null && (history === null || history === void 0 ? void 0 : history[0]) !== modalState.id) {
|
|
57
|
+
return;
|
|
58
|
+
}
|
|
59
|
+
if (maskAnimationFrame.current) {
|
|
60
|
+
cancelAnimationFrame(maskAnimationFrame.current);
|
|
61
|
+
}
|
|
62
|
+
maskAnimationFrame.current = requestAnimationFrame(function() {
|
|
63
|
+
if (maskElementRef.current) {
|
|
64
|
+
var _modalState_translateY = modalState.translateY, translateY = _modalState_translateY === void 0 ? 0 : _modalState_translateY, _modalState_translateYCurrent = modalState.translateYCurrent, translateYCurrent = _modalState_translateYCurrent === void 0 ? 0 : _modalState_translateYCurrent;
|
|
65
|
+
var opacity = forceOpacity === null ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0 : forceOpacity;
|
|
66
|
+
maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();
|
|
197
67
|
}
|
|
198
|
-
}
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
68
|
+
});
|
|
69
|
+
};
|
|
70
|
+
var openModal = function() {
|
|
71
|
+
if (!enteringModal || !prevProps) {
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
var enteringState = getModalState(enteringModal);
|
|
75
|
+
onEnter();
|
|
76
|
+
// Анимация открытия модального окна
|
|
77
|
+
if (!prevProps.exitingModal) {
|
|
78
|
+
requestAnimationFrame(function() {
|
|
79
|
+
if (enteringModal === enteringModal) {
|
|
80
|
+
waitTransitionFinish(enteringState === null || enteringState === void 0 ? void 0 : enteringState.innerElement, function() {
|
|
81
|
+
return onEntered(enteringModal);
|
|
82
|
+
}, timeout);
|
|
83
|
+
animateModalOpacity(enteringState, true);
|
|
207
84
|
}
|
|
208
|
-
|
|
209
|
-
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
85
|
+
});
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
// Переход между модальными окнами без анимации
|
|
89
|
+
if (enteringState === null || enteringState === void 0 ? void 0 : enteringState.innerElement) {
|
|
90
|
+
enteringState.innerElement.style.transition = "none";
|
|
91
|
+
enteringState.innerElement.style.opacity = "1";
|
|
92
|
+
}
|
|
93
|
+
onEntered(enteringModal);
|
|
94
|
+
};
|
|
95
|
+
var closeModal = function(id) {
|
|
96
|
+
var prevModalState = getModalState(id);
|
|
97
|
+
if (!prevModalState) {
|
|
98
|
+
return;
|
|
99
|
+
}
|
|
100
|
+
// Анимация закрытия модального окна
|
|
101
|
+
if (!activeModal) {
|
|
102
|
+
requestAnimationFrame(function() {
|
|
103
|
+
waitTransitionFinish(prevModalState === null || prevModalState === void 0 ? void 0 : prevModalState.innerElement, function() {
|
|
104
|
+
return onExited(id);
|
|
105
|
+
}, timeout);
|
|
106
|
+
animateModalOpacity(prevModalState, false);
|
|
107
|
+
setMaskOpacity(prevModalState, 0);
|
|
108
|
+
});
|
|
109
|
+
return;
|
|
110
|
+
}
|
|
111
|
+
// Переход между модальными окнами без анимации
|
|
112
|
+
onExited(id);
|
|
113
|
+
};
|
|
114
|
+
React.useEffect(function() {
|
|
115
|
+
if (!prevProps) {
|
|
116
|
+
return;
|
|
117
|
+
}
|
|
118
|
+
// transition phase 2: animate exiting modal
|
|
119
|
+
if (exitingModal && exitingModal !== prevProps.exitingModal) {
|
|
120
|
+
closeModal(exitingModal);
|
|
121
|
+
}
|
|
122
|
+
// transition phase 3: animate entering modal
|
|
123
|
+
if (enteringModal && enteringModal !== prevProps.enteringModal) {
|
|
124
|
+
openModal();
|
|
125
|
+
}
|
|
126
|
+
// focus restoration
|
|
127
|
+
if (activeModal && !prevProps.activeModal) {
|
|
128
|
+
var _document_activeElement;
|
|
129
|
+
restoreFocusTo.current = (_document_activeElement = document === null || document === void 0 ? void 0 : document.activeElement) !== null && _document_activeElement !== void 0 ? _document_activeElement : undefined;
|
|
130
|
+
}
|
|
131
|
+
if (!activeModal && !exitingModal && restoreFocusTo.current) {
|
|
132
|
+
restoreFocusTo.current.focus();
|
|
133
|
+
restoreFocusTo.current = undefined;
|
|
134
|
+
}
|
|
135
|
+
});
|
|
136
|
+
if (!activeModal && !exitingModal) {
|
|
137
|
+
return null;
|
|
138
|
+
}
|
|
139
|
+
return /*#__PURE__*/ React.createElement(ModalRootContext.Provider, {
|
|
140
|
+
value: modalRootContext
|
|
141
|
+
}, /*#__PURE__*/ React.createElement("div", {
|
|
142
|
+
className: classNames("vkuiModalRoot", webviewType === WebviewType.VKAPPS && "vkuiModalRoot--vkapps", "vkuiModalRoot--desktop")
|
|
143
|
+
}, /*#__PURE__*/ React.createElement("div", {
|
|
144
|
+
className: "vkuiModalRoot__mask",
|
|
145
|
+
ref: maskElementRef,
|
|
146
|
+
onClick: onExit
|
|
147
|
+
}), /*#__PURE__*/ React.createElement("div", {
|
|
148
|
+
className: "vkuiModalRoot__viewport"
|
|
149
|
+
}, modals.map(function(Modal) {
|
|
150
|
+
var modalId = getNavId(Modal.props, warn);
|
|
151
|
+
if (modalId !== activeModal && modalId !== exitingModal) {
|
|
152
|
+
return null;
|
|
233
153
|
}
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
154
|
+
var key = "modal-".concat(modalId);
|
|
155
|
+
return /*#__PURE__*/ React.createElement(FocusTrap, {
|
|
156
|
+
restoreFocus: false,
|
|
157
|
+
onClose: onExit,
|
|
158
|
+
timeout: timeout,
|
|
159
|
+
key: key,
|
|
160
|
+
className: "vkuiModalRoot__modal"
|
|
161
|
+
}, Modal);
|
|
162
|
+
}))));
|
|
163
|
+
};
|
|
238
164
|
|
|
239
165
|
//# sourceMappingURL=ModalRootDesktop.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ModalRoot/ModalRootDesktop.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { withContext } from '../../hoc/withContext';\nimport { withPlatform } from '../../hoc/withPlatform';\nimport { DOMProps, withDOM } from '../../lib/dom';\nimport { getNavId } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { transitionEvent } from '../../lib/supportEvents';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasPlatform } from '../../types';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n WebviewType,\n} from '../ConfigProvider/ConfigProviderContext';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\nimport { ModalsStateEntry } from './types';\nimport { ModalTransitionProps, withModalManager } from './useModalManager';\nimport styles from './ModalRoot.module.css';\n\nconst warn = warnOnce('ModalRoot');\n\nexport interface ModalRootProps extends HasPlatform {\n activeModal?: string | null;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n children?: React.ReactNode;\n\n /**\n * Будет вызвано при начале открытия активной модалки с её id\n */\n onOpen?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном открытии активной модалки с её id\n */\n onOpened?(modalId: string): void;\n\n /**\n * Будет вызвано при начале закрытия активной модалки с её id\n */\n onClose?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном закрытии активной модалки с её id\n */\n onClosed?(modalId: string): void;\n}\n\nclass ModalRootDesktopComponent extends React.Component<\n ModalRootProps & DOMProps & ModalTransitionProps\n> {\n constructor(props: ModalRootProps & ModalTransitionProps) {\n super(props);\n\n this.maskElementRef = React.createRef();\n\n this.modalRootContext = {\n updateModalHeight: () => undefined,\n registerModal: ({ id, ...data }) => Object.assign(this.getModalState(id) ?? {}, data),\n onClose: () => this.props.onExit(),\n isInsideModal: true,\n };\n }\n\n private readonly maskElementRef: React.RefObject<HTMLDivElement>;\n private maskAnimationFrame: number | undefined = undefined;\n private readonly modalRootContext: ModalRootContextInterface;\n private restoreFocusTo: HTMLElement | undefined = undefined;\n\n private get timeout() {\n return this.props.platform === Platform.IOS ? 400 : 320;\n }\n\n private get modals() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n getModalState(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.props.getModalState(id);\n }\n\n componentDidUpdate(prevProps: ModalRootProps & ModalTransitionProps) {\n // transition phase 2: animate exiting modal\n if (this.props.exitingModal && this.props.exitingModal !== prevProps.exitingModal) {\n this.closeModal(this.props.exitingModal);\n }\n\n // transition phase 3: animate entering modal\n if (this.props.enteringModal && this.props.enteringModal !== prevProps.enteringModal) {\n this.openModal(prevProps);\n }\n\n // focus restoration\n if (this.props.activeModal && !prevProps.activeModal) {\n this.restoreFocusTo = (this.props.document?.activeElement ?? undefined) as\n | HTMLElement\n | undefined;\n }\n if (!this.props.activeModal && !this.props.exitingModal && this.restoreFocusTo) {\n this.restoreFocusTo.focus();\n this.restoreFocusTo = undefined;\n }\n }\n\n openModal(prevProps: ModalRootProps & ModalTransitionProps) {\n const { enteringModal } = this.props;\n if (!enteringModal) {\n return;\n }\n\n const enteringState = this.getModalState(enteringModal);\n this.props.onEnter();\n\n // Анимация открытия модального окна\n if (!prevProps.exitingModal) {\n requestAnimationFrame(() => {\n if (this.props.enteringModal === enteringModal) {\n this.waitTransitionFinish(enteringState, () => this.props.onEntered(enteringModal));\n this.animateModalOpacity(enteringState, true);\n }\n });\n\n return;\n }\n\n // Переход между модальными окнами без анимации\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transition = 'none';\n enteringState.innerElement.style.opacity = '1';\n }\n\n this.props.onEntered(enteringModal);\n }\n\n closeModal(id: string) {\n const prevModalState = this.getModalState(id);\n if (!prevModalState) {\n return;\n }\n\n // Анимация закрытия модального окна\n if (!this.props.activeModal) {\n requestAnimationFrame(() => {\n this.waitTransitionFinish(prevModalState, () => this.props.onExited(id));\n this.animateModalOpacity(prevModalState, false);\n this.setMaskOpacity(prevModalState, 0);\n });\n\n return;\n }\n\n // Переход между модальными окнами без анимации\n this.props.onExited(id);\n }\n\n waitTransitionFinish(modalState: ModalsStateEntry | undefined, eventHandler: () => void) {\n if (transitionEvent.supported) {\n const onceHandler = () => {\n modalState?.innerElement?.removeEventListener(transitionEvent.name as string, onceHandler);\n eventHandler();\n };\n\n modalState?.innerElement?.addEventListener(transitionEvent.name as string, onceHandler);\n } else {\n setTimeout(eventHandler, this.timeout);\n }\n }\n\n /* Анимирует сдвиг модалки */\n animateModalOpacity(modalState: ModalsStateEntry | undefined, display: boolean) {\n if (modalState?.innerElement) {\n modalState.innerElement.style.transition = '';\n modalState.innerElement.style.transitionDelay =\n display && this.props.delayEnter ? `${this.timeout}ms` : '';\n modalState.innerElement.style.opacity = display ? '1' : '0';\n }\n }\n\n /* Устанавливает прозрачность для полупрозрачной подложки */\n setMaskOpacity(modalState: ModalsStateEntry, forceOpacity: number | null = null) {\n if (forceOpacity === null && this.props.history?.[0] !== modalState.id) {\n return;\n }\n\n if (this.maskAnimationFrame) {\n cancelAnimationFrame(this.maskAnimationFrame);\n }\n this.maskAnimationFrame = requestAnimationFrame(() => {\n if (this.maskElementRef.current) {\n const { translateY = 0, translateYCurrent = 0 } = modalState;\n\n const opacity =\n forceOpacity === null\n ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0\n : forceOpacity;\n this.maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();\n }\n });\n }\n\n render() {\n const { exitingModal, activeModal } = this.props;\n\n if (!activeModal && !exitingModal) {\n return null;\n }\n\n return (\n <ModalRootContext.Provider value={this.modalRootContext}>\n <div\n className={classNames(\n styles['ModalRoot'],\n this.props.configProvider?.webviewType === WebviewType.VKAPPS &&\n styles['ModalRoot--vkapps'],\n styles['ModalRoot--desktop'],\n )}\n >\n <div\n className={styles['ModalRoot__mask']}\n ref={this.maskElementRef}\n onClick={this.props.onExit}\n />\n <div className={styles['ModalRoot__viewport']}>\n {this.modals.map((Modal: React.ReactElement) => {\n const modalId = getNavId(Modal.props, warn);\n if (modalId !== activeModal && modalId !== exitingModal) {\n return null;\n }\n\n const key = `modal-${modalId}`;\n\n return (\n <FocusTrap\n restoreFocus={false}\n onClose={this.props.onExit}\n timeout={this.timeout}\n key={key}\n className={styles['ModalRoot__modal']}\n >\n {Modal}\n </FocusTrap>\n );\n })}\n </div>\n </div>\n </ModalRootContext.Provider>\n );\n }\n}\n\nexport const ModalRootDesktop = withContext(\n withPlatform(withDOM<ModalRootProps>(withModalManager()(ModalRootDesktopComponent))),\n ConfigProviderContext,\n 'configProvider',\n);\n"],"names":["React","classNames","clamp","withContext","withPlatform","withDOM","getNavId","Platform","transitionEvent","warnOnce","ConfigProviderContext","WebviewType","FocusTrap","ModalRootContext","withModalManager","warn","ModalRootDesktopComponent","props","maskElementRef","maskAnimationFrame","undefined","modalRootContext","restoreFocusTo","createRef","updateModalHeight","registerModal","Object","id","data","assign","getModalState","onClose","onExit","isInsideModal","timeout","platform","IOS","modals","Children","toArray","children","componentDidUpdate","prevProps","exitingModal","closeModal","enteringModal","openModal","activeModal","document","activeElement","focus","enteringState","onEnter","requestAnimationFrame","waitTransitionFinish","onEntered","animateModalOpacity","innerElement","style","transition","opacity","prevModalState","onExited","setMaskOpacity","modalState","eventHandler","supported","onceHandler","removeEventListener","name","addEventListener","setTimeout","display","transitionDelay","delayEnter","forceOpacity","history","cancelAnimationFrame","current","translateY","translateYCurrent","toString","render","Provider","value","div","className","configProvider","webviewType","VKAPPS","ref","onClick","map","Modal","modalId","key","restoreFocus","Component","ModalRootDesktop"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ModalRoot/ModalRootDesktop.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames, noop } from '@vkontakte/vkjs';\nimport { clamp } from '../../helpers/math';\nimport { useObjectMemo } from '../../hooks/useObjectMemo';\nimport { usePrevious } from '../../hooks/usePrevious';\nimport { useWaitTransitionFinish } from '../../hooks/useWaitTransitionFinish';\nimport { useDOM } from '../../lib/dom';\nimport { getNavId } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { useConfigProvider, WebviewType } from '../ConfigProvider/ConfigProviderContext';\nimport { FocusTrap } from '../FocusTrap/FocusTrap';\nimport { ModalRootContext, ModalRootContextInterface } from './ModalRootContext';\nimport { ModalRootWithDOMProps, ModalsStateEntry } from './types';\nimport { useModalManager } from './useModalManager';\nimport styles from './ModalRoot.module.css';\n\nconst warn = warnOnce('ModalRoot');\n\nexport const ModalRootDesktop = ({\n activeModal: activeModalProp,\n children,\n onOpen,\n onOpened,\n onClose,\n onClosed,\n}: ModalRootWithDOMProps) => {\n const maskElementRef = React.useRef<HTMLDivElement>(null);\n const maskAnimationFrame = React.useRef<number | undefined>(undefined);\n const restoreFocusTo = React.useRef<HTMLElement | undefined>(undefined);\n\n const { document } = useDOM();\n const { webviewType, platform } = useConfigProvider();\n const {\n activeModal,\n exitingModal,\n onExit,\n getModalState,\n enteringModal,\n onEnter,\n onEntered,\n onExited,\n history,\n delayEnter,\n } = useModalManager(activeModalProp, children, onOpen, onOpened, onClose, onClosed, noop);\n\n const { waitTransitionFinish } = useWaitTransitionFinish();\n const prevProps = usePrevious({\n exitingModal,\n enteringModal,\n activeModal,\n });\n const modalRootContext: ModalRootContextInterface = useObjectMemo({\n updateModalHeight: () => undefined,\n registerModal: ({ id, ...data }) => Object.assign(getModalState(id) ?? {}, data),\n onClose: onExit,\n isInsideModal: true,\n });\n\n const timeout = platform === Platform.IOS ? 400 : 320;\n const modals = React.Children.toArray(children) as React.ReactElement[];\n\n /* Анимирует сдвиг модального окна */\n const animateModalOpacity = (modalState: ModalsStateEntry | undefined, display: boolean) => {\n if (modalState?.innerElement) {\n modalState.innerElement.style.transition = '';\n modalState.innerElement.style.transitionDelay = display && delayEnter ? `${timeout}ms` : '';\n modalState.innerElement.style.opacity = display ? '1' : '0';\n }\n };\n\n /* Устанавливает прозрачность для полупрозрачной подложки */\n const setMaskOpacity = (modalState: ModalsStateEntry, forceOpacity: number | null = null) => {\n if (forceOpacity === null && history?.[0] !== modalState.id) {\n return;\n }\n\n if (maskAnimationFrame.current) {\n cancelAnimationFrame(maskAnimationFrame.current);\n }\n maskAnimationFrame.current = requestAnimationFrame(() => {\n if (maskElementRef.current) {\n const { translateY = 0, translateYCurrent = 0 } = modalState;\n\n const opacity =\n forceOpacity === null\n ? 1 - (translateYCurrent - translateY) / (100 - translateY) || 0\n : forceOpacity;\n maskElementRef.current.style.opacity = clamp(opacity, 0, 100).toString();\n }\n });\n };\n\n const openModal = () => {\n if (!enteringModal || !prevProps) {\n return;\n }\n\n const enteringState = getModalState(enteringModal);\n onEnter();\n\n // Анимация открытия модального окна\n if (!prevProps.exitingModal) {\n requestAnimationFrame(() => {\n if (enteringModal === enteringModal) {\n waitTransitionFinish(\n enteringState?.innerElement,\n () => onEntered(enteringModal),\n timeout,\n );\n animateModalOpacity(enteringState, true);\n }\n });\n\n return;\n }\n\n // Переход между модальными окнами без анимации\n if (enteringState?.innerElement) {\n enteringState.innerElement.style.transition = 'none';\n enteringState.innerElement.style.opacity = '1';\n }\n\n onEntered(enteringModal);\n };\n\n const closeModal = (id: string) => {\n const prevModalState = getModalState(id);\n if (!prevModalState) {\n return;\n }\n\n // Анимация закрытия модального окна\n if (!activeModal) {\n requestAnimationFrame(() => {\n waitTransitionFinish(prevModalState?.innerElement, () => onExited(id), timeout);\n animateModalOpacity(prevModalState, false);\n setMaskOpacity(prevModalState, 0);\n });\n\n return;\n }\n\n // Переход между модальными окнами без анимации\n onExited(id);\n };\n\n React.useEffect(() => {\n if (!prevProps) {\n return;\n }\n\n // transition phase 2: animate exiting modal\n if (exitingModal && exitingModal !== prevProps.exitingModal) {\n closeModal(exitingModal);\n }\n\n // transition phase 3: animate entering modal\n if (enteringModal && enteringModal !== prevProps.enteringModal) {\n openModal();\n }\n\n // focus restoration\n if (activeModal && !prevProps.activeModal) {\n restoreFocusTo.current = (document?.activeElement ?? undefined) as HTMLElement | undefined;\n }\n if (!activeModal && !exitingModal && restoreFocusTo.current) {\n restoreFocusTo.current.focus();\n restoreFocusTo.current = undefined;\n }\n });\n\n if (!activeModal && !exitingModal) {\n return null;\n }\n\n return (\n <ModalRootContext.Provider value={modalRootContext}>\n <div\n className={classNames(\n styles['ModalRoot'],\n webviewType === WebviewType.VKAPPS && styles['ModalRoot--vkapps'],\n styles['ModalRoot--desktop'],\n )}\n >\n <div className={styles['ModalRoot__mask']} ref={maskElementRef} onClick={onExit} />\n <div className={styles['ModalRoot__viewport']}>\n {modals.map((Modal: React.ReactElement) => {\n const modalId = getNavId(Modal.props, warn);\n if (modalId !== activeModal && modalId !== exitingModal) {\n return null;\n }\n\n const key = `modal-${modalId}`;\n\n return (\n <FocusTrap\n restoreFocus={false}\n onClose={onExit}\n timeout={timeout}\n key={key}\n className={styles['ModalRoot__modal']}\n >\n {Modal}\n </FocusTrap>\n );\n })}\n </div>\n </div>\n </ModalRootContext.Provider>\n );\n};\n"],"names":["React","classNames","noop","clamp","useObjectMemo","usePrevious","useWaitTransitionFinish","useDOM","getNavId","Platform","warnOnce","useConfigProvider","WebviewType","FocusTrap","ModalRootContext","useModalManager","warn","ModalRootDesktop","activeModal","activeModalProp","children","onOpen","onOpened","onClose","onClosed","maskElementRef","useRef","maskAnimationFrame","undefined","restoreFocusTo","document","webviewType","platform","exitingModal","onExit","getModalState","enteringModal","onEnter","onEntered","onExited","history","delayEnter","waitTransitionFinish","prevProps","modalRootContext","updateModalHeight","registerModal","Object","id","data","assign","isInsideModal","timeout","IOS","modals","Children","toArray","animateModalOpacity","modalState","display","innerElement","style","transition","transitionDelay","opacity","setMaskOpacity","forceOpacity","current","cancelAnimationFrame","requestAnimationFrame","translateY","translateYCurrent","toString","openModal","enteringState","closeModal","prevModalState","useEffect","activeElement","focus","Provider","value","div","className","VKAPPS","ref","onClick","map","Modal","modalId","props","key","restoreFocus"],"mappings":"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"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { DOMContextInterface } from '../../lib/dom';
|
|
2
|
+
import { HasChildren, HasPlatform } from '../../types';
|
|
3
|
+
import { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';
|
|
1
4
|
export declare enum ModalType {
|
|
2
5
|
PAGE = "page",
|
|
3
6
|
CARD = "card"
|
|
@@ -58,3 +61,28 @@ export interface ModalsStateEntry extends ModalElements {
|
|
|
58
61
|
collapsedRange?: TranslateRange;
|
|
59
62
|
hiddenRange?: TranslateRange;
|
|
60
63
|
}
|
|
64
|
+
export interface ModalRootProps extends HasChildren {
|
|
65
|
+
activeModal?: string | null;
|
|
66
|
+
/**
|
|
67
|
+
* Будет вызвано при начале открытия активной модалки с её id
|
|
68
|
+
*/
|
|
69
|
+
onOpen?(modalId: string): void;
|
|
70
|
+
/**
|
|
71
|
+
* Будет вызвано при окончательном открытии активной модалки с её id
|
|
72
|
+
*/
|
|
73
|
+
onOpened?(modalId: string): void;
|
|
74
|
+
/**
|
|
75
|
+
* Будет вызвано при начале закрытия активной модалки с её id
|
|
76
|
+
*/
|
|
77
|
+
onClose?(modalId: string): void;
|
|
78
|
+
/**
|
|
79
|
+
* Будет вызвано при окончательном закрытии активной модалки с её id
|
|
80
|
+
*/
|
|
81
|
+
onClosed?(modalId: string): void;
|
|
82
|
+
}
|
|
83
|
+
export interface ModalRootWithDOMProps extends HasPlatform, ModalRootProps, DOMContextInterface {
|
|
84
|
+
/**
|
|
85
|
+
* @ignore
|
|
86
|
+
*/
|
|
87
|
+
configProvider?: ConfigProviderContextInterface;
|
|
88
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/components/ModalRoot/types.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"sources":["../../../src/components/ModalRoot/types.ts"],"sourcesContent":["import { DOMContextInterface } from '../../lib/dom';\nimport { HasChildren, HasPlatform } from '../../types';\nimport { ConfigProviderContextInterface } from '../ConfigProvider/ConfigProviderContext';\n\nexport enum ModalType {\n PAGE = 'page',\n CARD = 'card',\n}\n\nexport type TranslateRange = [number, number];\n\nexport type ModalsState = { [index: string]: ModalsStateEntry };\n\nexport interface ModalElements {\n modalElement?: HTMLElement | null;\n innerElement?: HTMLElement | null;\n headerElement?: HTMLElement | null;\n contentElement?: HTMLElement | null;\n}\n\nexport interface ModalsStateEntry extends ModalElements {\n id: string | null;\n /**\n * Событие начала открытия модалки.\n */\n onOpen?: VoidFunction;\n /**\n * Событие открытия модалки.\n */\n onOpened?: VoidFunction;\n /**\n * Событие начала закрытия модалки.\n */\n onClose?: VoidFunction;\n /**\n * Событие закрытия модалки.\n */\n onClosed?: VoidFunction;\n type?: ModalType;\n\n settlingHeight?: number;\n dynamicContentHeight?: boolean;\n expandable?: boolean;\n\n /**\n * Процент текущего сдвига модалки\n */\n translateY?: number;\n /**\n * Процент сдвига модалки в изначальном состоянии\n */\n translateYFrom?: number;\n /**\n * Процент сдвига модалки во время взаимодействия с ней (потянуть, чтобы открыть или закрыть)\n */\n translateYCurrent?: number;\n\n touchStartContentScrollTop?: number;\n touchMovePositive?: boolean | null;\n touchShiftYPercent?: number;\n\n expanded?: boolean;\n collapsed?: boolean;\n hidden?: boolean;\n\n contentScrolled?: boolean;\n contentScrollStopTimeout?: ReturnType<typeof setTimeout>;\n\n expandedRange?: TranslateRange;\n collapsedRange?: TranslateRange;\n hiddenRange?: TranslateRange;\n}\n\nexport interface ModalRootProps extends HasChildren {\n activeModal?: string | null;\n\n /**\n * Будет вызвано при начале открытия активной модалки с её id\n */\n onOpen?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном открытии активной модалки с её id\n */\n onOpened?(modalId: string): void;\n\n /**\n * Будет вызвано при начале закрытия активной модалки с её id\n */\n onClose?(modalId: string): void;\n\n /**\n * Будет вызвано при окончательном закрытии активной модалки с её id\n */\n onClosed?(modalId: string): void;\n}\n\nexport interface ModalRootWithDOMProps extends HasPlatform, ModalRootProps, DOMContextInterface {\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n}\n"],"names":["ModalType","PAGE","CARD"],"mappings":"WAIO;UAAKA,SAAS;IAATA,UACVC,UAAO;IADGD,UAEVE,UAAO;GAFGF,cAAAA"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { HasChildren } from '../../types';
|
|
2
3
|
import { ModalsStateEntry } from './types';
|
|
3
4
|
interface ModalTransitionState {
|
|
4
5
|
activeModal?: string | null;
|
|
@@ -12,7 +13,7 @@ export interface ModalTransitionProps extends ModalTransitionState {
|
|
|
12
13
|
onEntered: (id: string | null) => void;
|
|
13
14
|
onExit: VoidFunction;
|
|
14
15
|
onExited: (id: string | null) => void;
|
|
15
|
-
getModalState: (id: string) => ModalsStateEntry;
|
|
16
|
+
getModalState: (id: string | undefined | null) => ModalsStateEntry | undefined;
|
|
16
17
|
delayEnter: boolean;
|
|
17
18
|
}
|
|
18
19
|
export declare function modalTransitionReducer(state: ModalTransitionState, action: {
|
|
@@ -32,8 +33,8 @@ export declare function modalTransitionReducer(state: ModalTransitionState, acti
|
|
|
32
33
|
* 5. activeModal: m2, exitingModal: null, enteringModal: null, переход закончен
|
|
33
34
|
*/
|
|
34
35
|
export declare function useModalManager(activeModal: string | null | undefined, children: React.ReactNode | React.ReactNode[], onOpen?: (id: string) => void, onOpened?: (id: string) => void, onClose?: (id: string) => void, onClosed?: (id: string) => void, initModal?: (state: ModalsStateEntry) => void): ModalTransitionProps;
|
|
35
|
-
|
|
36
|
-
activeModal?: string | null
|
|
37
|
-
|
|
38
|
-
|
|
36
|
+
type WithModalManager<Props extends ModalTransitionProps> = HasChildren & Omit<Props, keyof ModalTransitionProps> & {
|
|
37
|
+
activeModal?: string | null;
|
|
38
|
+
};
|
|
39
|
+
export declare function withModalManager(initModal?: (a: ModalsStateEntry) => void): <Props extends ModalTransitionProps>(Wrapped: React.ComponentType<Props>) => React.ComponentType<WithModalManager<Props>>;
|
|
39
40
|
export {};
|
|
@@ -70,7 +70,7 @@ export function modalTransitionReducer(state, action) {
|
|
|
70
70
|
if (modalState) {
|
|
71
71
|
if (isFunction(modalState.onOpen)) {
|
|
72
72
|
modalState.onOpen();
|
|
73
|
-
} else if (isFunction(onOpen)) {
|
|
73
|
+
} else if (isFunction(onOpen) && modalState.id) {
|
|
74
74
|
onOpen(modalState.id);
|
|
75
75
|
}
|
|
76
76
|
}
|
|
@@ -80,7 +80,7 @@ export function modalTransitionReducer(state, action) {
|
|
|
80
80
|
if (modalState) {
|
|
81
81
|
if (isFunction(modalState.onClose)) {
|
|
82
82
|
modalState.onClose();
|
|
83
|
-
} else if (isFunction(onClose)) {
|
|
83
|
+
} else if (isFunction(onClose) && modalState.id) {
|
|
84
84
|
onClose(modalState.id);
|
|
85
85
|
}
|
|
86
86
|
}
|
|
@@ -181,7 +181,7 @@ export function modalTransitionReducer(state, action) {
|
|
|
181
181
|
]);
|
|
182
182
|
var delayEnter = Boolean(transitionState.exitingModal && (isCard(activeModal) || isCard(transitionState.exitingModal)));
|
|
183
183
|
var getModalState = React.useCallback(function(id) {
|
|
184
|
-
return modalsState[id];
|
|
184
|
+
return id ? modalsState[id] : undefined;
|
|
185
185
|
}, [
|
|
186
186
|
modalsState
|
|
187
187
|
]);
|