@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 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/View/ViewInfinite.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { withContext } from '../../hoc/withContext';\nimport { withPlatform } from '../../hoc/withPlatform';\nimport { canUseDOM, DOMProps, withDOM } from '../../lib/dom';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { animationEvent, transitionEvent } from '../../lib/supportEvents';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasPlatform } from '../../types';\nimport { ScrollContext, ScrollContextInterface } from '../AppRoot/ScrollContext';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from '../ConfigProvider/ConfigProviderContext';\nimport { NavTransitionProvider } from '../NavTransitionContext/NavTransitionContext';\nimport { SplitColContext, SplitColContextProps } from '../SplitCol/SplitColContext';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport { swipeBackExcluded } from './utils';\nimport styles from './View.module.css';\nimport iosStyles from './ViewIOS.module.css';\n\nconst warn = warnOnce('ViewInfinite');\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: Array<number | undefined>;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nlet scrollsCache: ViewsScrolls = {};\n\nexport type TransitionParams = { from: string | null; to: string | null };\n\nexport interface ViewInfiniteProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n onTransition?(params: TransitionParams & { isBack: boolean }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(activePanel: string | null): void | 'prevent';\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n isBackCheck?(params: TransitionParams): boolean;\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewInfiniteState {\n animated: boolean;\n\n visiblePanels: Array<string | null>;\n activePanel: string | null;\n isBack?: boolean;\n prevPanel: string | null;\n nextPanel: string | null;\n\n swipingBack: boolean;\n swipeBackPrevented: boolean;\n swipeBackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string | null;\n swipeBackPrevPanel: string | null;\n swipeBackResult: SwipeBackResults | null;\n\n browserSwipe: boolean;\n}\n\nclass ViewInfiniteComponent extends React.Component<\n ViewInfiniteProps & DOMProps,\n ViewInfiniteState\n> {\n private static readonly SWIPE_BACK_AREA = 70;\n\n constructor(props: ViewInfiniteProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipeBackPrevented: false,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewInfiniteProps> = {\n history: [],\n };\n\n private scrolls = scrollsCache[getNavId(this.props, warn) as string] || {};\n private transitionFinishTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n private animationFinishTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n }\n\n componentDidUpdate(prevProps: ViewInfiniteProps, prevState: ViewInfiniteState) {\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n let isBack = false;\n\n if (this.props.isBackCheck) {\n isBack = this.props.isBackCheck({\n from: prevProps.activePanel,\n to: this.props.activePanel,\n });\n } else {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find((id) => id === prevProps.activePanel || id === this.props.activePanel);\n isBack = firstLayerId === this.props.activePanel;\n }\n\n this.blurActiveElement();\n\n const prevScrolls = this.scrolls[prevProps.activePanel] || [];\n const scrolls = {\n ...this.scrolls,\n [prevProps.activePanel]: [...prevScrolls, this.props.scroll?.getScroll().y],\n };\n this.scrolls = scrolls;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === Platform.ANDROID || this.props.platform === Platform.VKCOM\n ? 300\n : 600,\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (prevProps.activePanel !== this.props.activePanel && prevState.swipingBack) {\n const nextPanel = this.state.swipeBackNextPanel;\n const prevPanel = this.state.swipeBackPrevPanel;\n let scrollPosition: undefined | number = undefined;\n\n this.scrolls = {\n ...this.scrolls,\n };\n\n if (prevPanel !== null) {\n const prevPanelScrolls = [...(this.scrolls[prevPanel] || [])].slice(0, -1);\n this.scrolls[prevPanel] = prevPanelScrolls;\n }\n if (nextPanel !== null) {\n const newPanelScrolls = [...(this.scrolls[nextPanel] || [])];\n scrollPosition = newPanelScrolls.pop();\n this.scrolls[nextPanel] = newPanelScrolls;\n }\n\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n this.props.scroll?.scrollTo(0, scrollPosition);\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n },\n );\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler,\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n const newPanelScrolls = [...(this.scrolls[this.state.activePanel] || [])];\n const scrollPosition = newPanelScrolls.pop();\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: newPanelScrolls,\n };\n\n this.props.scroll?.scrollTo(0, scrollPosition);\n }\n\n // Закончился Safari свайп\n if (prevProps.activePanel !== this.props.activePanel && this.state.browserSwipe) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate ||\n this.props.platform === Platform.VKCOM\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler,\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener,\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener,\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === Platform.ANDROID || this.props.platform === Platform.VKCOM\n ? 300\n : 600,\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== 'undefined' && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n\n const prevPanelScrolls = [...(this.scrolls[prevPanel] || [])].slice(0, -1);\n const newPanelScrolls = [...(this.scrolls[activePanel] || [])];\n const scrollPosition = isBack ? newPanelScrolls.pop() : 0;\n if (isBack) {\n this.scrolls = {\n ...this.scrolls,\n [prevPanel]: prevPanelScrolls,\n [activePanel]: newPanelScrolls,\n };\n }\n\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel: activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll?.scrollTo(0, isBack ? scrollPosition : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n },\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n (!e ||\n [\n 'vkui-animation-ios-next-forward',\n 'vkui-animation-ios-prev-back',\n 'vkui-animation-view-next-forward',\n 'vkui-animation-view-prev-back',\n ].includes(e.animationName)) &&\n this.state.prevPanel !== null\n ) {\n this.flushTransition(this.state.prevPanel, Boolean(this.state.isBack));\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e.propertyName.includes('transform') &&\n e.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (event: TouchEvent): void => {\n if (\n !this.window ||\n this.props.platform !== Platform.IOS ||\n this.state.swipeBackPrevented ||\n swipeBackExcluded(event) ||\n this.shouldDisableTransitionMotion()\n ) {\n return;\n }\n\n if (!this.props.configProvider?.isWebView) {\n if (\n (event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA ||\n event.startX >= this.window.innerWidth - ViewInfiniteComponent.SWIPE_BACK_AREA) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n return;\n }\n\n if (\n !this.props.onSwipeBack ||\n (this.state.animated && event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA)\n ) {\n return;\n }\n\n if (\n !this.state.swipingBack &&\n event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA &&\n this.props.history &&\n this.props.history.length > 1\n ) {\n if (this.props.onSwipeBackStart) {\n const payload = this.props.onSwipeBackStart(this.state.activePanel);\n if (payload === 'prevent') {\n this.setState({ swipeBackPrevented: true });\n return;\n }\n }\n\n if (this.state.activePanel !== null) {\n // Note: вызываем закрытие клавиатуры. В iOS это нативное поведение при свайпе.\n this.blurActiveElement();\n const prevScrolls = this.scrolls[this.state.activePanel] || [];\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: [...prevScrolls, this.props.scroll?.getScroll().y],\n };\n }\n\n this.setState({\n swipingBack: true,\n swipeBackStartX: event.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history.slice(-2)[0],\n });\n }\n\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (event.shiftX < 0) {\n swipeBackShift = 0;\n } else if (event.shiftX > this.window.innerWidth - this.state.swipeBackStartX) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = event.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n };\n\n onEnd = (event: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / event.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipeBackStartX + this.state.swipeBackShift > this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n if (this.state.swipeBackPrevented) {\n this.setState({ swipeBackPrevented: false });\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) / this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` } : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n id,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n isBackCheck,\n className,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n isBack,\n animated,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n swipingBack,\n } = this.state;\n\n const panels = this.panels\n .filter((panel) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined && this.state.visiblePanels.includes(panelId)) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n })\n .sort((panel) => {\n const panelId = getNavId(panel.props, warn);\n const isPrevPanel = panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isNextPanel = panelId === nextPanel || panelId === swipeBackNextPanel;\n\n if (isNextPanel) {\n return swipingBack || this.state.isBack ? -1 : 1;\n }\n\n if (isPrevPanel) {\n return swipingBack || this.state.isBack ? 1 : -1;\n }\n\n return 0;\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n className={classNames(\n styles['View'],\n platform === Platform.IOS && iosStyles['View--ios'],\n !disableAnimation && this.state.animated && styles['View--animated'],\n !disableAnimation && this.state.swipingBack && styles['View--swiping-back'],\n disableAnimation && styles['View--no-motion'],\n className,\n )}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div className={styles['View__panels']}>\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev = panelId === prevPanel || panelId === swipeBackPrevPanel;\n const compensateScroll =\n isPrev || panelId === swipeBackNextPanel || (panelId === nextPanel && isBack);\n const isTransitionTarget = animated && panelId === (isBack ? prevPanel : nextPanel);\n const scrollList = (panelId && this.scrolls[panelId]) || [];\n const scroll = scrollList[scrollList.length - 1] || 0;\n\n return (\n <div\n className={classNames(\n styles['View__panel'],\n panelId === activePanel && iosStyles['View__panel--active'],\n panelId === prevPanel && styles['View__panel--prev'],\n panelId === nextPanel && styles['View__panel--next'],\n panelId === swipeBackPrevPanel && iosStyles['View__panel--swipe-back-prev'],\n panelId === swipeBackNextPanel && iosStyles['View__panel--swipe-back-next'],\n swipeBackResult === SwipeBackResults.success &&\n iosStyles['View__panel--swipe-back-success'],\n swipeBackResult === SwipeBackResults.fail &&\n iosStyles['View__panel--swipe-back-failed'],\n )}\n onAnimationEnd={isTransitionTarget ? this.transitionEndHandler : undefined}\n ref={(el) => panelId !== undefined && (this.panelNodes[panelId] = el)}\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n className={styles['View__panel-in']}\n style={{ marginTop: compensateScroll ? -scroll : undefined }}\n >\n <NavTransitionProvider\n entering={panelId === nextPanel || panelId === swipeBackNextPanel}\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n </Touch>\n );\n }\n}\n\nexport const ViewInfinite = withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewInfiniteProps>(ViewInfiniteComponent)),\n SplitColContext,\n 'splitCol',\n ),\n ConfigProviderContext,\n 'configProvider',\n ),\n ScrollContext,\n 'scroll',\n);\n"],"names":["ViewInfinite","warn","warnOnce","SwipeBackResults","fail","success","scrollsCache","React","ViewInfiniteComponent","props","scrolls","getNavId","transitionFinishTimeout","undefined","animationFinishTimeout","panelNodes","transitionEndHandler","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","swipingBackTransitionEndHandler","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","onSwipeBackCancel","onSwipeBackSuccess","onMoveX","event","window","platform","Platform","IOS","swipeBackPrevented","swipeBackExcluded","shouldDisableTransitionMotion","configProvider","isWebView","startX","SWIPE_BACK_AREA","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","onSwipeBackStart","payload","activePanel","blurActiveElement","prevScrolls","scroll","getScroll","y","swipeBackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","onEnd","speed","duration","visiblePanels","nextPanel","document","panels","Children","toArray","children","componentWillUnmount","id","clearTimeout","componentDidUpdate","prevProps","prevState","isBackCheck","from","to","firstLayerId","map","panel","find","animationEvent","supported","setTimeout","ANDROID","VKCOM","scrollPosition","prevPanelScrolls","newPanelScrolls","pop","scrollTo","onTransition","waitTransitionFinish","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","name","removeEventListener","addEventListener","activeElement","blur","calcPanelSwipeStyles","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","render","_1","nav","className","restProps","filter","sort","isPrevPanel","isNextPanel","disableAnimation","Touch","Component","classNames","div","compensateScroll","isTransitionTarget","scrollList","onAnimationEnd","ref","el","style","key","marginTop","NavTransitionProvider","entering","defaultProps","withContext","withPlatform","withDOM","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/View/ViewInfinite.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { withContext } from '../../hoc/withContext';\nimport { withPlatform } from '../../hoc/withPlatform';\nimport { canUseDOM, DOMProps, withDOM } from '../../lib/dom';\nimport { getNavId, NavIdProps } from '../../lib/getNavId';\nimport { Platform } from '../../lib/platform';\nimport { animationEvent, transitionEvent } from '../../lib/supportEvents';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasPlatform } from '../../types';\nimport { ScrollContext, ScrollContextInterface } from '../AppRoot/ScrollContext';\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from '../ConfigProvider/ConfigProviderContext';\nimport { NavTransitionProvider } from '../NavTransitionContext/NavTransitionContext';\nimport { SplitColContext, SplitColContextProps } from '../SplitCol/SplitColContext';\nimport { Touch, TouchEvent } from '../Touch/Touch';\nimport { swipeBackExcluded } from './utils';\nimport styles from './View.module.css';\n\nconst warn = warnOnce('ViewInfinite');\n\nenum SwipeBackResults {\n fail = 1,\n success,\n}\n\ninterface Scrolls {\n [index: string]: Array<number | undefined>;\n}\n\ninterface ViewsScrolls {\n [index: string]: Scrolls;\n}\n\ntype TransitionEventHandler = (e?: TransitionEvent) => void;\n\nlet scrollsCache: ViewsScrolls = {};\n\nexport type TransitionParams = { from: string | null; to: string | null };\n\nexport interface ViewInfiniteProps\n extends React.HTMLAttributes<HTMLElement>,\n HasPlatform,\n NavIdProps {\n activePanel: string;\n onTransition?(params: TransitionParams & { isBack: boolean }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(activePanel: string | null): void | 'prevent';\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n isBackCheck?(params: TransitionParams): boolean;\n /**\n * @ignore\n */\n splitCol?: SplitColContextProps;\n /**\n * @ignore\n */\n configProvider?: ConfigProviderContextInterface;\n /**\n * @ignore\n */\n scroll?: ScrollContextInterface;\n}\n\nexport interface ViewInfiniteState {\n animated: boolean;\n\n visiblePanels: Array<string | null>;\n activePanel: string | null;\n isBack?: boolean;\n prevPanel: string | null;\n nextPanel: string | null;\n\n swipingBack: boolean;\n swipeBackPrevented: boolean;\n swipeBackStartX: number;\n swipeBackShift: number;\n swipeBackNextPanel: string | null;\n swipeBackPrevPanel: string | null;\n swipeBackResult: SwipeBackResults | null;\n\n browserSwipe: boolean;\n}\n\nclass ViewInfiniteComponent extends React.Component<\n ViewInfiniteProps & DOMProps,\n ViewInfiniteState\n> {\n private static readonly SWIPE_BACK_AREA = 70;\n\n constructor(props: ViewInfiniteProps) {\n super(props);\n\n this.state = {\n animated: false,\n\n visiblePanels: [props.activePanel],\n activePanel: props.activePanel,\n isBack: undefined,\n prevPanel: null,\n nextPanel: null,\n\n swipingBack: false,\n swipeBackPrevented: false,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n swipeBackNextPanel: null,\n swipeBackPrevPanel: null,\n swipeBackResult: null,\n\n browserSwipe: false,\n };\n }\n\n static defaultProps: Partial<ViewInfiniteProps> = {\n history: [],\n };\n\n private scrolls = scrollsCache[getNavId(this.props, warn) as string] || {};\n private transitionFinishTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n private animationFinishTimeout: ReturnType<typeof setTimeout> | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n }\n\n componentDidUpdate(prevProps: ViewInfiniteProps, prevState: ViewInfiniteState) {\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n let isBack = false;\n\n if (this.props.isBackCheck) {\n isBack = this.props.isBackCheck({\n from: prevProps.activePanel,\n to: this.props.activePanel,\n });\n } else {\n const firstLayerId = this.panels\n .map((panel) => getNavId(panel.props, warn))\n .find((id) => id === prevProps.activePanel || id === this.props.activePanel);\n isBack = firstLayerId === this.props.activePanel;\n }\n\n this.blurActiveElement();\n\n const prevScrolls = this.scrolls[prevProps.activePanel] || [];\n const scrolls = {\n ...this.scrolls,\n [prevProps.activePanel]: [...prevScrolls, this.props.scroll?.getScroll().y],\n };\n this.scrolls = scrolls;\n\n if (this.shouldDisableTransitionMotion()) {\n this.flushTransition(prevProps.activePanel, isBack);\n } else {\n this.setState({\n visiblePanels: [prevProps.activePanel, this.props.activePanel],\n prevPanel: prevProps.activePanel,\n nextPanel: this.props.activePanel,\n activePanel: null,\n animated: true,\n isBack,\n });\n\n // Фолбек анимации перехода\n if (!animationEvent.supported) {\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n this.animationFinishTimeout = setTimeout(\n this.transitionEndHandler,\n this.props.platform === Platform.ANDROID || this.props.platform === Platform.VKCOM\n ? 300\n : 600,\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (prevProps.activePanel !== this.props.activePanel && prevState.swipingBack) {\n const nextPanel = this.state.swipeBackNextPanel;\n const prevPanel = this.state.swipeBackPrevPanel;\n let scrollPosition: undefined | number = undefined;\n\n this.scrolls = {\n ...this.scrolls,\n };\n\n if (prevPanel !== null) {\n const prevPanelScrolls = [...(this.scrolls[prevPanel] || [])].slice(0, -1);\n this.scrolls[prevPanel] = prevPanelScrolls;\n }\n if (nextPanel !== null) {\n const newPanelScrolls = [...(this.scrolls[nextPanel] || [])];\n scrollPosition = newPanelScrolls.pop();\n this.scrolls[nextPanel] = newPanelScrolls;\n }\n\n this.setState(\n {\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n activePanel: nextPanel,\n visiblePanels: [nextPanel],\n },\n () => {\n this.props.scroll?.scrollTo(0, scrollPosition);\n prevProps.onTransition &&\n prevProps.onTransition({\n isBack: true,\n from: prevPanel,\n to: nextPanel,\n });\n },\n );\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler,\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n const newPanelScrolls = [...(this.scrolls[this.state.activePanel] || [])];\n const scrollPosition = newPanelScrolls.pop();\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: newPanelScrolls,\n };\n\n this.props.scroll?.scrollTo(0, scrollPosition);\n }\n\n // Закончился Safari свайп\n if (prevProps.activePanel !== this.props.activePanel && this.state.browserSwipe) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate ||\n this.props.platform === Platform.VKCOM\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler,\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener,\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener,\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === Platform.ANDROID || this.props.platform === Platform.VKCOM\n ? 300\n : 600,\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== 'undefined' && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n\n const prevPanelScrolls = [...(this.scrolls[prevPanel] || [])].slice(0, -1);\n const newPanelScrolls = [...(this.scrolls[activePanel] || [])];\n const scrollPosition = isBack ? newPanelScrolls.pop() : 0;\n if (isBack) {\n this.scrolls = {\n ...this.scrolls,\n [prevPanel]: prevPanelScrolls,\n [activePanel]: newPanelScrolls,\n };\n }\n\n this.setState(\n {\n prevPanel: null,\n nextPanel: null,\n visiblePanels: [activePanel],\n activePanel: activePanel,\n animated: false,\n isBack: undefined,\n },\n () => {\n this.props.scroll?.scrollTo(0, isBack ? scrollPosition : 0);\n this.props.onTransition &&\n this.props.onTransition({ isBack, from: prevPanel, to: activePanel });\n },\n );\n }\n\n transitionEndHandler = (e?: React.AnimationEvent): void => {\n if (\n (!e ||\n [\n styles['vkui-animation-ios-next-forward'],\n styles['vkui-animation-ios-prev-back'],\n styles['vkui-animation-view-next-forward'],\n styles['vkui-animation-view-prev-back'],\n ].includes(e.animationName)) &&\n this.state.prevPanel !== null\n ) {\n this.flushTransition(this.state.prevPanel, Boolean(this.state.isBack));\n }\n };\n\n swipingBackTransitionEndHandler = (e?: TransitionEvent): void => {\n // indexOf because of vendor prefixes in old browsers\n if (\n !e ||\n (e.propertyName.includes('transform') &&\n e.target === this.pickPanel(this.state.swipeBackNextPanel))\n ) {\n switch (this.state.swipeBackResult) {\n case SwipeBackResults.fail:\n this.onSwipeBackCancel();\n break;\n case SwipeBackResults.success:\n this.onSwipeBackSuccess();\n }\n }\n };\n\n onSwipeBackSuccess(): void {\n this.props.onSwipeBack && this.props.onSwipeBack();\n }\n\n onSwipeBackCancel(): void {\n this.props.onSwipeBackCancel && this.props.onSwipeBackCancel();\n this.setState({\n swipeBackPrevPanel: null,\n swipeBackNextPanel: null,\n swipingBack: false,\n swipeBackResult: null,\n swipeBackStartX: 0,\n swipeBackShift: 0,\n });\n }\n\n onMoveX = (event: TouchEvent): void => {\n if (\n !this.window ||\n this.props.platform !== Platform.IOS ||\n this.state.swipeBackPrevented ||\n swipeBackExcluded(event) ||\n this.shouldDisableTransitionMotion()\n ) {\n return;\n }\n\n if (!this.props.configProvider?.isWebView) {\n if (\n (event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA ||\n event.startX >= this.window.innerWidth - ViewInfiniteComponent.SWIPE_BACK_AREA) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n return;\n }\n\n if (\n !this.props.onSwipeBack ||\n (this.state.animated && event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA)\n ) {\n return;\n }\n\n if (\n !this.state.swipingBack &&\n event.startX <= ViewInfiniteComponent.SWIPE_BACK_AREA &&\n this.props.history &&\n this.props.history.length > 1\n ) {\n if (this.props.onSwipeBackStart) {\n const payload = this.props.onSwipeBackStart(this.state.activePanel);\n if (payload === 'prevent') {\n this.setState({ swipeBackPrevented: true });\n return;\n }\n }\n\n if (this.state.activePanel !== null) {\n // Note: вызываем закрытие клавиатуры. В iOS это нативное поведение при свайпе.\n this.blurActiveElement();\n const prevScrolls = this.scrolls[this.state.activePanel] || [];\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: [...prevScrolls, this.props.scroll?.getScroll().y],\n };\n }\n\n this.setState({\n swipingBack: true,\n swipeBackStartX: event.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history.slice(-2)[0],\n });\n }\n\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (event.shiftX < 0) {\n swipeBackShift = 0;\n } else if (event.shiftX > this.window.innerWidth - this.state.swipeBackStartX) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = event.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n };\n\n onEnd = (event: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / event.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipeBackStartX + this.state.swipeBackShift > this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n if (this.state.swipeBackPrevented) {\n this.setState({ swipeBackPrevented: false });\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) / this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` } : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n id,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n isBackCheck,\n className,\n ...restProps\n } = this.props;\n const {\n prevPanel,\n nextPanel,\n activePanel,\n isBack,\n animated,\n swipeBackPrevPanel,\n swipeBackNextPanel,\n swipeBackResult,\n swipingBack,\n } = this.state;\n\n const panels = this.panels\n .filter((panel) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined && this.state.visiblePanels.includes(panelId)) ||\n panelId === swipeBackPrevPanel ||\n panelId === swipeBackNextPanel\n );\n })\n .sort((panel) => {\n const panelId = getNavId(panel.props, warn);\n const isPrevPanel = panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isNextPanel = panelId === nextPanel || panelId === swipeBackNextPanel;\n\n if (isNextPanel) {\n return swipingBack || this.state.isBack ? -1 : 1;\n }\n\n if (isPrevPanel) {\n return swipingBack || this.state.isBack ? 1 : -1;\n }\n\n return 0;\n });\n\n const disableAnimation = this.shouldDisableTransitionMotion();\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n className={classNames(\n styles['View'],\n platform === Platform.IOS && classNames(styles['View--ios'], 'vkuiInternalView--ios'),\n !disableAnimation && this.state.animated && styles['View--animated'],\n !disableAnimation && this.state.swipingBack && styles['View--swiping-back'],\n disableAnimation && styles['View--no-motion'],\n className,\n )}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div className={styles['View__panels']}>\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev = panelId === prevPanel || panelId === swipeBackPrevPanel;\n const compensateScroll =\n isPrev || panelId === swipeBackNextPanel || (panelId === nextPanel && isBack);\n const isTransitionTarget = animated && panelId === (isBack ? prevPanel : nextPanel);\n const scrollList = (panelId && this.scrolls[panelId]) || [];\n const scroll = scrollList[scrollList.length - 1] || 0;\n\n return (\n <div\n className={classNames(\n styles['View__panel'],\n panelId === activePanel && styles['View__panel--active'],\n panelId === prevPanel && styles['View__panel--prev'],\n panelId === nextPanel && styles['View__panel--next'],\n panelId === swipeBackPrevPanel && styles['View__panel--swipe-back-prev'],\n panelId === swipeBackNextPanel && styles['View__panel--swipe-back-next'],\n swipeBackResult === SwipeBackResults.success &&\n styles['View__panel--swipe-back-success'],\n swipeBackResult === SwipeBackResults.fail &&\n styles['View__panel--swipe-back-failed'],\n )}\n onAnimationEnd={isTransitionTarget ? this.transitionEndHandler : undefined}\n ref={(el) => panelId !== undefined && (this.panelNodes[panelId] = el)}\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n className={styles['View__panel-in']}\n style={{ marginTop: compensateScroll ? -scroll : undefined }}\n >\n <NavTransitionProvider\n entering={panelId === nextPanel || panelId === swipeBackNextPanel}\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n </Touch>\n );\n }\n}\n\nexport const ViewInfinite = withContext(\n withContext(\n withContext(\n withPlatform(withDOM<ViewInfiniteProps>(ViewInfiniteComponent)),\n SplitColContext,\n 'splitCol',\n ),\n ConfigProviderContext,\n 'configProvider',\n ),\n ScrollContext,\n 'scroll',\n);\n"],"names":["ViewInfinite","warn","warnOnce","SwipeBackResults","fail","success","scrollsCache","React","ViewInfiniteComponent","props","scrolls","getNavId","transitionFinishTimeout","undefined","animationFinishTimeout","panelNodes","transitionEndHandler","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","swipingBackTransitionEndHandler","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","onSwipeBackCancel","onSwipeBackSuccess","onMoveX","event","window","platform","Platform","IOS","swipeBackPrevented","swipeBackExcluded","shouldDisableTransitionMotion","configProvider","isWebView","startX","SWIPE_BACK_AREA","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","onSwipeBackStart","payload","activePanel","blurActiveElement","prevScrolls","scroll","getScroll","y","swipeBackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","onEnd","speed","duration","visiblePanels","nextPanel","document","panels","Children","toArray","children","componentWillUnmount","id","clearTimeout","componentDidUpdate","prevProps","prevState","isBackCheck","from","to","firstLayerId","map","panel","find","animationEvent","supported","setTimeout","ANDROID","VKCOM","scrollPosition","prevPanelScrolls","newPanelScrolls","pop","scrollTo","onTransition","waitTransitionFinish","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","name","removeEventListener","addEventListener","activeElement","blur","calcPanelSwipeStyles","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","render","_1","nav","className","restProps","filter","sort","isPrevPanel","isNextPanel","disableAnimation","Touch","Component","classNames","div","compensateScroll","isTransitionTarget","scrollList","onAnimationEnd","ref","el","style","key","marginTop","NavTransitionProvider","entering","defaultProps","withContext","withPlatform","withDOM","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import * as React from 'react';
|
|
2
|
+
import { HasComponent, HasRootRef } from '../../types';
|
|
3
|
+
interface VisuallyHiddenProps extends React.AllHTMLAttributes<HTMLElement>, HasRootRef<HTMLElement>, HasComponent {
|
|
4
|
+
}
|
|
5
|
+
/**
|
|
6
|
+
* @since v5.4.0
|
|
7
|
+
* @see https://vkcom.github.io/VKUI/#/VisuallyHidden
|
|
8
|
+
* @description
|
|
9
|
+
*
|
|
10
|
+
* Компонент-обертка. Позволяет скрыть контент визуально, но оставить его
|
|
11
|
+
* доступным для ассистивных технологий. По умолчанию — `span`.
|
|
12
|
+
*/
|
|
13
|
+
export declare const VisuallyHidden: ({ Component, getRootRef, className, ...restProps }: VisuallyHiddenProps) => JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "VisuallyHidden", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return VisuallyHidden;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _interopRequireWildcard = require("@swc/helpers/lib/_interop_require_wildcard.js").default;
|
|
12
|
+
var _objectSpread = require("@swc/helpers/lib/_object_spread.js").default;
|
|
13
|
+
var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").default;
|
|
14
|
+
var _objectWithoutProperties = require("@swc/helpers/lib/_object_without_properties.js").default;
|
|
15
|
+
var _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
16
|
+
var _vkjs = require("@vkontakte/vkjs");
|
|
17
|
+
var VisuallyHidden = function(_param) {
|
|
18
|
+
var _param_Component = _param.Component, Component = _param_Component === void 0 ? "span" : _param_Component, getRootRef = _param.getRootRef, className = _param.className, restProps = _objectWithoutProperties(_param, [
|
|
19
|
+
"Component",
|
|
20
|
+
"getRootRef",
|
|
21
|
+
"className"
|
|
22
|
+
]);
|
|
23
|
+
return /*#__PURE__*/ _react.createElement(Component, _objectSpreadProps(_objectSpread({}, restProps), {
|
|
24
|
+
className: (0, _vkjs.classNames)("vkuiVisuallyHidden", className),
|
|
25
|
+
ref: getRootRef
|
|
26
|
+
}));
|
|
27
|
+
};
|
|
28
|
+
|
|
29
|
+
//# sourceMappingURL=VisuallyHidden.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/VisuallyHidden/VisuallyHidden.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasComponent, HasRootRef } from '../../types';\nimport styles from './VisuallyHidden.module.css';\n\ninterface VisuallyHiddenProps\n extends React.AllHTMLAttributes<HTMLElement>,\n HasRootRef<HTMLElement>,\n HasComponent {}\n\n/**\n * @since v5.4.0\n * @see https://vkcom.github.io/VKUI/#/VisuallyHidden\n * @description\n *\n * Компонент-обертка. Позволяет скрыть контент визуально, но оставить его\n * доступным для ассистивных технологий. По умолчанию — `span`.\n */\nexport const VisuallyHidden = ({\n Component = 'span',\n getRootRef,\n className,\n ...restProps\n}: VisuallyHiddenProps) => {\n return (\n <Component\n {...restProps}\n className={classNames(styles['VisuallyHidden'], className)}\n ref={getRootRef}\n />\n );\n};\n"],"names":["VisuallyHidden","Component","getRootRef","className","restProps","classNames","ref"],"mappings":";;;;+BAkBaA;;;eAAAA;;;;;;;2DAlBU;oBACI;AAiBpB,IAAMA,iBAAiB,iBAKH;kCAJzBC,WAAAA,0CAAY,2BACZC,oBAAAA,YACAC,mBAAAA,WACGC;QAHHH;QACAC;QACAC;;IAGA,qBACE,qBAACF,gDACKG;QACJD,WAAWE,IAAAA,gBAAU,wBAA2BF;QAChDG,KAAKJ;;AAGX"}
|
|
@@ -3,9 +3,9 @@ import { HasRef } from '../../types';
|
|
|
3
3
|
export interface VisuallyHiddenInputProps extends React.InputHTMLAttributes<HTMLInputElement>, HasRef<HTMLInputElement> {
|
|
4
4
|
}
|
|
5
5
|
/**
|
|
6
|
-
* @
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
6
|
+
* @deprecated v5.4.0
|
|
7
|
+
*
|
|
8
|
+
* Компонент устарел и будет удален в v6. Используйте
|
|
9
|
+
* `<VisuallyHidden Component="input" />`
|
|
10
10
|
*/
|
|
11
11
|
export declare const VisuallyHiddenInput: ({ getRef, className, ...restProps }: VisuallyHiddenInputProps) => JSX.Element;
|
|
@@ -14,11 +14,16 @@ var _objectSpreadProps = require("@swc/helpers/lib/_object_spread_props.js").def
|
|
|
14
14
|
var _objectWithoutProperties = require("@swc/helpers/lib/_object_without_properties.js").default;
|
|
15
15
|
var _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
16
16
|
var _vkjs = require("@vkontakte/vkjs");
|
|
17
|
+
var _warnOnce = require("../../lib/warnOnce");
|
|
18
|
+
var warn = (0, _warnOnce.warnOnce)("VisuallyHiddenInput");
|
|
17
19
|
var VisuallyHiddenInput = function(_param) {
|
|
18
20
|
var getRef = _param.getRef, className = _param.className, restProps = _objectWithoutProperties(_param, [
|
|
19
21
|
"getRef",
|
|
20
22
|
"className"
|
|
21
23
|
]);
|
|
24
|
+
if (process.env.NODE_ENV === "development") {
|
|
25
|
+
warn("Компонент устарел и будет удален в v6. Используйте https://vkcom.github.io/VKUI/#/VisuallyHidden");
|
|
26
|
+
}
|
|
22
27
|
return /*#__PURE__*/ _react.createElement("input", _objectSpreadProps(_objectSpread({}, restProps), {
|
|
23
28
|
className: (0, _vkjs.classNames)("vkuiVisuallyHiddenInput", className),
|
|
24
29
|
ref: getRef
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/VisuallyHiddenInput/VisuallyHiddenInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { HasRef } from '../../types';\nimport styles from './VisuallyHiddenInput.module.css';\n\nexport interface VisuallyHiddenInputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement> {}\n
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/VisuallyHiddenInput/VisuallyHiddenInput.tsx"],"sourcesContent":["import * as React from 'react';\nimport { classNames } from '@vkontakte/vkjs';\nimport { warnOnce } from '../../lib/warnOnce';\nimport { HasRef } from '../../types';\nimport styles from './VisuallyHiddenInput.module.css';\n\nconst warn = warnOnce('VisuallyHiddenInput');\nexport interface VisuallyHiddenInputProps\n extends React.InputHTMLAttributes<HTMLInputElement>,\n HasRef<HTMLInputElement> {}\n/**\n * @deprecated v5.4.0\n *\n * Компонент устарел и будет удален в v6. Используйте\n * `<VisuallyHidden Component=\"input\" />`\n */\nexport const VisuallyHiddenInput = ({\n getRef,\n className,\n ...restProps\n}: VisuallyHiddenInputProps) => {\n if (process.env.NODE_ENV === 'development') {\n warn(\n 'Компонент устарел и будет удален в v6. Используйте https://vkcom.github.io/VKUI/#/VisuallyHidden',\n );\n }\n\n return (\n <input\n {...restProps}\n className={classNames(styles['VisuallyHiddenInput'], className)}\n ref={getRef}\n />\n );\n};\n"],"names":["VisuallyHiddenInput","warn","warnOnce","getRef","className","restProps","process","env","NODE_ENV","input","classNames","ref"],"mappings":";;;;+BAgBaA;;;eAAAA;;;;;;;2DAhBU;oBACI;wBACF;AAIzB,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AAUf,IAAMF,sBAAsB,iBAIH;QAH9BG,gBAAAA,QACAC,mBAAAA,WACGC;QAFHF;QACAC;;IAGA,IAAIE,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1CP,KACE;IAEJ,CAAC;IAED,qBACE,qBAACQ,8CACKJ;QACJD,WAAWM,IAAAA,gBAAU,6BAAgCN;QACrDO,KAAKR;;AAGX"}
|
|
@@ -18,9 +18,9 @@ var _vkjs = require("@vkontakte/vkjs");
|
|
|
18
18
|
var _usePlatform = require("../../hooks/usePlatform");
|
|
19
19
|
var _platform = require("../../lib/platform");
|
|
20
20
|
var _warnOnce = require("../../lib/warnOnce");
|
|
21
|
+
var _adaptiveIconRenderer = require("../AdaptiveIconRenderer/AdaptiveIconRenderer");
|
|
21
22
|
var _counter = require("../Counter/Counter");
|
|
22
23
|
var _tappable = require("../Tappable/Tappable");
|
|
23
|
-
var _writeBarIconRenderer = require("./WriteBarIconRenderer");
|
|
24
24
|
var warn = (0, _warnOnce.warnOnce)("WriteBarIcon");
|
|
25
25
|
var WriteBarIcon = function(_param) {
|
|
26
26
|
var mode = _param.mode, children = _param.children, count = _param.count, className = _param.className, restProps = _objectWithoutProperties(_param, [
|
|
@@ -72,7 +72,7 @@ var WriteBarIcon = function(_param) {
|
|
|
72
72
|
className: (0, _vkjs.classNames)("vkuiWriteBarIcon", platform === _platform.Platform.IOS && "vkuiWriteBarIcon--ios", mode === "send" && "vkuiWriteBarIcon--mode-send", mode === "done" && "vkuiWriteBarIcon--mode-done", className)
|
|
73
73
|
}), /*#__PURE__*/ _react.createElement("span", {
|
|
74
74
|
className: "vkuiWriteBarIcon__in"
|
|
75
|
-
}, predefinedIcons ? /*#__PURE__*/ _react.createElement(
|
|
75
|
+
}, predefinedIcons ? /*#__PURE__*/ _react.createElement(_adaptiveIconRenderer.AdaptiveIconRenderer, predefinedIcons) : children), (0, _vkjs.hasReactNode)(count) && /*#__PURE__*/ _react.createElement(_counter.Counter, {
|
|
76
76
|
className: "vkuiWriteBarIcon__counter",
|
|
77
77
|
size: "s"
|
|
78
78
|
}, count));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/WriteBarIcon/WriteBarIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24Attach,\n Icon24CheckCircleOutline,\n Icon24Send,\n Icon28AddCircleOutline,\n Icon28AttachOutline,\n Icon28CheckCircleOutline,\n Icon28Send,\n Icon48WritebarDone,\n Icon48WritebarSend,\n} from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { COMMON_WARNINGS, warnOnce } from '../../lib/warnOnce';\nimport {
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/WriteBarIcon/WriteBarIcon.tsx"],"sourcesContent":["import * as React from 'react';\nimport {\n Icon24Attach,\n Icon24CheckCircleOutline,\n Icon24Send,\n Icon28AddCircleOutline,\n Icon28AttachOutline,\n Icon28CheckCircleOutline,\n Icon28Send,\n Icon48WritebarDone,\n Icon48WritebarSend,\n} from '@vkontakte/icons';\nimport { classNames, hasReactNode } from '@vkontakte/vkjs';\nimport { usePlatform } from '../../hooks/usePlatform';\nimport { Platform } from '../../lib/platform';\nimport { COMMON_WARNINGS, warnOnce } from '../../lib/warnOnce';\nimport { AdaptiveIconRenderer } from '../AdaptiveIconRenderer/AdaptiveIconRenderer';\nimport { Counter } from '../Counter/Counter';\nimport { Tappable } from '../Tappable/Tappable';\nimport styles from './WriteBarIcon.module.css';\n\nexport interface WriteBarIconProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {\n /**\n * Предустановленные типы кнопок в WriteBar для отрисовки иконки в зависимости от платформы.\n * Если передать валидное значение для этого свойства, `children` игнорируется.\n *\n * - `attach` – иконка прикрепления.\n * - `send` – иконка отправки.\n * - `done` – иконка отправки в режиме редактирования.\n */\n mode?: 'attach' | 'send' | 'done';\n /**\n * Значение счётчика для кнопки. Например, для количества прикреплённых файлов.\n */\n count?: number;\n}\n\nconst warn = warnOnce('WriteBarIcon');\n\n/**\n * @see https://vkcom.github.io/VKUI/#/WriteBarIcon\n */\nexport const WriteBarIcon = ({\n mode,\n children,\n count,\n className,\n ...restProps\n}: WriteBarIconProps) => {\n const platform = usePlatform();\n let modeLabel: string | undefined = undefined;\n\n let predefinedIcons;\n switch (mode) {\n case 'attach':\n predefinedIcons = {\n IconCompact: platform === Platform.IOS ? Icon28AddCircleOutline : Icon24Attach,\n IconRegular: platform === Platform.IOS ? Icon28AddCircleOutline : Icon28AttachOutline,\n };\n modeLabel = 'Прикрепить файл';\n break;\n\n case 'send':\n predefinedIcons = {\n IconCompact: platform === Platform.IOS ? Icon48WritebarSend : Icon24Send,\n IconRegular: platform === Platform.IOS ? Icon48WritebarSend : Icon28Send,\n };\n modeLabel = 'Отправить';\n break;\n\n case 'done':\n predefinedIcons = {\n IconCompact: platform === Platform.IOS ? Icon48WritebarDone : Icon24CheckCircleOutline,\n IconRegular: platform === Platform.IOS ? Icon48WritebarDone : Icon28CheckCircleOutline,\n };\n modeLabel = 'Готово';\n break;\n\n default:\n break;\n }\n\n if (process.env.NODE_ENV === 'development') {\n const isAccessible = !modeLabel && (!restProps['aria-label'] || restProps['aria-labelledby']);\n\n if (!isAccessible) {\n warn(COMMON_WARNINGS.a11y['button-name'], 'error');\n }\n }\n\n return (\n <Tappable\n aria-label={modeLabel}\n {...restProps}\n Component=\"button\"\n hasHover={false}\n activeMode={styles['WriteBarIcon__active']}\n className={classNames(\n styles['WriteBarIcon'],\n platform === Platform.IOS && styles['WriteBarIcon--ios'],\n mode === 'send' && styles['WriteBarIcon--mode-send'],\n mode === 'done' && styles['WriteBarIcon--mode-done'],\n className,\n )}\n >\n <span className={styles['WriteBarIcon__in']}>\n {predefinedIcons ? <AdaptiveIconRenderer {...predefinedIcons} /> : children}\n </span>\n {hasReactNode(count) && (\n <Counter className={styles['WriteBarIcon__counter']} size=\"s\">\n {count}\n </Counter>\n )}\n </Tappable>\n );\n};\n"],"names":["WriteBarIcon","warn","warnOnce","mode","children","count","className","restProps","platform","usePlatform","modeLabel","undefined","predefinedIcons","IconCompact","Platform","IOS","Icon28AddCircleOutline","Icon24Attach","IconRegular","Icon28AttachOutline","Icon48WritebarSend","Icon24Send","Icon28Send","Icon48WritebarDone","Icon24CheckCircleOutline","Icon28CheckCircleOutline","process","env","NODE_ENV","isAccessible","COMMON_WARNINGS","a11y","Tappable","aria-label","Component","hasHover","activeMode","classNames","span","AdaptiveIconRenderer","hasReactNode","Counter","size"],"mappings":";;;;+BA0CaA;;;eAAAA;;;;;;;2DA1CU;qBAWhB;oBACkC;2BACb;wBACH;wBACiB;oCACL;uBACb;wBACC;AAmBzB,IAAMC,OAAOC,IAAAA,kBAAQ,EAAC;AAKf,IAAMF,eAAe,iBAMH;QALvBG,cAAAA,MACAC,kBAAAA,UACAC,eAAAA,OACAC,mBAAAA,WACGC;QAJHJ;QACAC;QACAC;QACAC;;IAGA,IAAME,WAAWC,IAAAA,wBAAW;IAC5B,IAAIC,YAAgCC;IAEpC,IAAIC;IACJ,OAAQT;QACN,KAAK;YACHS,kBAAkB;gBAChBC,aAAaL,aAAaM,kBAAQ,CAACC,GAAG,GAAGC,6BAAsB,GAAGC,mBAAY;gBAC9EC,aAAaV,aAAaM,kBAAQ,CAACC,GAAG,GAAGC,6BAAsB,GAAGG,0BAAmB;YACvF;YACAT,YAAY;YACZ,KAAM;QAER,KAAK;YACHE,kBAAkB;gBAChBC,aAAaL,aAAaM,kBAAQ,CAACC,GAAG,GAAGK,yBAAkB,GAAGC,iBAAU;gBACxEH,aAAaV,aAAaM,kBAAQ,CAACC,GAAG,GAAGK,yBAAkB,GAAGE,iBAAU;YAC1E;YACAZ,YAAY;YACZ,KAAM;QAER,KAAK;YACHE,kBAAkB;gBAChBC,aAAaL,aAAaM,kBAAQ,CAACC,GAAG,GAAGQ,yBAAkB,GAAGC,+BAAwB;gBACtFN,aAAaV,aAAaM,kBAAQ,CAACC,GAAG,GAAGQ,yBAAkB,GAAGE,+BAAwB;YACxF;YACAf,YAAY;YACZ,KAAM;QAER;YACE,KAAM;IACV;IAEA,IAAIgB,QAAQC,GAAG,CAACC,QAAQ,KAAK,eAAe;QAC1C,IAAMC,eAAe,CAACnB,aAAc,CAAA,CAACH,SAAS,CAAC,aAAa,IAAIA,SAAS,CAAC,kBAAkB,AAAD;QAE3F,IAAI,CAACsB,cAAc;YACjB5B,KAAK6B,yBAAe,CAACC,IAAI,CAAC,cAAc,EAAE;QAC5C,CAAC;IACH,CAAC;IAED,qBACE,qBAACC,kBAAQ;QACPC,cAAYvB;OACRH;QACJ2B,WAAU;QACVC,UAAU,KAAK;QACfC,UAAU;QACV9B,WAAW+B,IAAAA,gBAAU,sBAEnB7B,aAAaM,kBAAQ,CAACC,GAAG,6BACzBZ,SAAS,yCACTA,SAAS,yCACTG;sBAGF,qBAACgC;QAAKhC,SAAS;OACZM,gCAAkB,qBAAC2B,0CAAoB,EAAK3B,mBAAsBR,QAAQ,GAE5EoC,IAAAA,kBAAY,EAACnC,wBACZ,qBAACoC,gBAAO;QAACnC,SAAS;QAAmCoC,MAAK;OACvDrC;AAKX"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/helpers/getPlatformClassName.ts"],"sourcesContent":["// TODO
|
|
1
|
+
{"version":3,"sources":["../../../src/helpers/getPlatformClassName.ts"],"sourcesContent":["// TODO [>=6]: удалить этот хеллпер\nimport { platform, PlatformType } from '../lib/platform';\n\n/**\n * Подставляйте соответствующий селектор самостоятельно.\n *\n * @deprecated\n *\n */\nexport function getPlatformClassName(base: string, osname?: PlatformType): string;\n/**\n * Подставляйте соответствующий селектор самостоятельно.\n *\n * @deprecated\n */\nexport function getPlatformClassName<Styles extends Record<string, string>>(\n base: keyof Styles,\n osname?: PlatformType,\n styles?: Styles,\n): string | undefined;\nexport function getPlatformClassName<Styles extends Record<string, string>>(\n base: keyof Styles,\n osname: PlatformType = platform(),\n /**\n * Note: ввиду того, что Typescript не поддерживает `typescript-plugin-css-modules` во время компиляции,\n * не удалось покрыть дженерик типом параметр `styles`. Поэтому может вернуться undefined.\n */\n styles?: Styles,\n): string | undefined {\n const platformClassName = `${String(base)}--${osname}`;\n return styles ? styles[platformClassName] : platformClassName;\n}\n"],"names":["getPlatformClassName","base","osname","platform","styles","platformClassName","String"],"mappings":"AAAA,mCAAmC;;;;;+BAoBnBA;;;eAAAA;;;wBAnBuB;AAmBhC,SAASA,qBACdC,IAAkB,EAOE;QANpBC,SAAAA,iEAAuBC,IAAAA,kBAAQ,GAAE,EACjC;;;GAGC,GACDC;IAEA,IAAMC,oBAAoB,AAAC,GAAmBH,OAAjBI,OAAOL,OAAM,MAAW,OAAPC;IAC9C,OAAOE,SAASA,MAAM,CAACC,kBAAkB,GAAGA,iBAAiB;AAC/D"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", {
|
|
3
|
+
value: true
|
|
4
|
+
});
|
|
5
|
+
Object.defineProperty(exports, "useFocusWithin", {
|
|
6
|
+
enumerable: true,
|
|
7
|
+
get: function() {
|
|
8
|
+
return useFocusWithin;
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
var _interopRequireDefault = require("@swc/helpers/lib/_interop_require_default.js").default;
|
|
12
|
+
var _slicedToArray = require("@swc/helpers/lib/_sliced_to_array.js").default;
|
|
13
|
+
var _react = /*#__PURE__*/ _interopRequireDefault(require("react"));
|
|
14
|
+
var _dom = require("../lib/dom");
|
|
15
|
+
var _useGlobalEventListener = require("./useGlobalEventListener");
|
|
16
|
+
function useFocusWithin(ref) {
|
|
17
|
+
var document = (0, _dom.useDOM)().document;
|
|
18
|
+
var isFocusWithin = function() {
|
|
19
|
+
if (!ref.current || !document) {
|
|
20
|
+
return false;
|
|
21
|
+
}
|
|
22
|
+
return ref.current.contains(document.activeElement);
|
|
23
|
+
};
|
|
24
|
+
var _React_useState = _slicedToArray(_react.default.useState(isFocusWithin), 2), focusWithin = _React_useState[0], setFocusWithin = _React_useState[1];
|
|
25
|
+
var listener = function() {
|
|
26
|
+
var focus = isFocusWithin();
|
|
27
|
+
focus !== focusWithin && setFocusWithin(focus);
|
|
28
|
+
};
|
|
29
|
+
(0, _useGlobalEventListener.useGlobalEventListener)(document, "focus", listener, {
|
|
30
|
+
capture: true
|
|
31
|
+
});
|
|
32
|
+
(0, _useGlobalEventListener.useGlobalEventListener)(document, "blur", listener, {
|
|
33
|
+
capture: true
|
|
34
|
+
});
|
|
35
|
+
return focusWithin;
|
|
36
|
+
}
|
|
37
|
+
|
|
38
|
+
//# sourceMappingURL=useFocusWithin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useFocusWithin.ts"],"sourcesContent":["import React from 'react';\nimport { useDOM } from '../lib/dom';\nimport { useGlobalEventListener } from './useGlobalEventListener';\n\nexport function useFocusWithin(ref: React.RefObject<HTMLElement | null>): boolean {\n const { document } = useDOM();\n const isFocusWithin = () => {\n if (!ref.current || !document) {\n return false;\n }\n\n return ref.current.contains(document.activeElement);\n };\n\n const [focusWithin, setFocusWithin] = React.useState<boolean>(isFocusWithin);\n\n const listener = () => {\n const focus = isFocusWithin();\n focus !== focusWithin && setFocusWithin(focus);\n };\n\n useGlobalEventListener(document, 'focus', listener, { capture: true });\n useGlobalEventListener(document, 'blur', listener, { capture: true });\n\n return focusWithin;\n}\n"],"names":["useFocusWithin","ref","document","useDOM","isFocusWithin","current","contains","activeElement","React","useState","focusWithin","setFocusWithin","listener","focus","useGlobalEventListener","capture"],"mappings":";;;;+BAIgBA;;;eAAAA;;;;;0DAJE;mBACK;sCACgB;AAEhC,SAASA,eAAeC,GAAwC,EAAW;IAChF,IAAM,AAAEC,WAAaC,IAAAA,WAAM,IAAnBD;IACR,IAAME,gBAAgB,WAAM;QAC1B,IAAI,CAACH,IAAII,OAAO,IAAI,CAACH,UAAU;YAC7B,OAAO,KAAK;QACd,CAAC;QAED,OAAOD,IAAII,OAAO,CAACC,QAAQ,CAACJ,SAASK,aAAa;IACpD;IAEA,IAAsCC,iCAAAA,cAAK,CAACC,QAAQ,CAAUL,oBAAvDM,cAA+BF,oBAAlBG,iBAAkBH;IAEtC,IAAMI,WAAW,WAAM;QACrB,IAAMC,QAAQT;QACdS,UAAUH,eAAeC,eAAeE;IAC1C;IAEAC,IAAAA,8CAAsB,EAACZ,UAAU,SAASU,UAAU;QAAEG,SAAS,IAAI;IAAC;IACpED,IAAAA,8CAAsB,EAACZ,UAAU,QAAQU,UAAU;QAAEG,SAAS,IAAI;IAAC;IAEnE,OAAOL;AACT"}
|
package/dist/cjs/hooks/useId.js
CHANGED
|
@@ -15,7 +15,7 @@ var _react = /*#__PURE__*/ _interopRequireWildcard(require("react"));
|
|
|
15
15
|
// https://github.com/eps1lon/material-ui/blob/8d5f135b4d7a58253a99ab56dce4ac8de61f5dc1/packages/mui-utils/src/useId.ts#L21
|
|
16
16
|
var maybeReactUseId = _react["useId".toString()];
|
|
17
17
|
var id = 0;
|
|
18
|
-
// TODO: Remove after React 18
|
|
18
|
+
// TODO [react@>=18]: Remove after React 18
|
|
19
19
|
function useIncrementingCounterID() {
|
|
20
20
|
var _React_useState = _slicedToArray(_react.useState(function() {
|
|
21
21
|
return id++;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useId.ts"],"sourcesContent":["import * as React from 'react';\n\n// Workaround for https://github.com/webpack/webpack/issues/14814\n// https://github.com/eps1lon/material-ui/blob/8d5f135b4d7a58253a99ab56dce4ac8de61f5dc1/packages/mui-utils/src/useId.ts#L21\nconst maybeReactUseId: undefined | (() => string) = (React as any)['useId'.toString()];\n\nlet id = 0;\n\n// TODO: Remove after React 18\nfunction useIncrementingCounterID(): string {\n const [state] = React.useState(() => id++);\n\n return `:r${state}:`;\n}\n\nexport const useId: () => string = maybeReactUseId ?? useIncrementingCounterID;\n"],"names":["useId","maybeReactUseId","React","toString","id","useIncrementingCounterID","useState","state"],"mappings":";;;;+BAeaA;;;eAAAA;;;;;2DAfU;AAEvB,iEAAiE;AACjE,2HAA2H;AAC3H,IAAMC,kBAA8C,AAACC,MAAa,CAAC,QAAQC,QAAQ,GAAG;AAEtF,IAAIC,KAAK;AAET,
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useId.ts"],"sourcesContent":["import * as React from 'react';\n\n// Workaround for https://github.com/webpack/webpack/issues/14814\n// https://github.com/eps1lon/material-ui/blob/8d5f135b4d7a58253a99ab56dce4ac8de61f5dc1/packages/mui-utils/src/useId.ts#L21\nconst maybeReactUseId: undefined | (() => string) = (React as any)['useId'.toString()];\n\nlet id = 0;\n\n// TODO [react@>=18]: Remove after React 18\nfunction useIncrementingCounterID(): string {\n const [state] = React.useState(() => id++);\n\n return `:r${state}:`;\n}\n\nexport const useId: () => string = maybeReactUseId ?? useIncrementingCounterID;\n"],"names":["useId","maybeReactUseId","React","toString","id","useIncrementingCounterID","useState","state"],"mappings":";;;;+BAeaA;;;eAAAA;;;;;2DAfU;AAEvB,iEAAiE;AACjE,2HAA2H;AAC3H,IAAMC,kBAA8C,AAACC,MAAa,CAAC,QAAQC,QAAQ,GAAG;AAEtF,IAAIC,KAAK;AAET,2CAA2C;AAC3C,SAASC,2BAAmC;IAC1C,IAAgBH,iCAAAA,OAAMI,QAAQ,CAAC;eAAMF;YAA9BG,QAASL;IAEhB,OAAO,AAAC,KAAU,OAANK,OAAM;AACpB;AAEO,IAAMP,QAAsBC,4BAAAA,6BAAAA,kBAAmBI,wBAAwB"}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
export declare const useWaitTransitionFinish: () => {
|
|
2
|
-
waitTransitionFinish: (element: HTMLElement | null, eventHandler: VoidFunction, durationFallback: number) => void;
|
|
2
|
+
waitTransitionFinish: (element: HTMLElement | undefined | null, eventHandler: VoidFunction, durationFallback: number) => void;
|
|
3
3
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/hooks/useWaitTransitionFinish.ts"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useDOM } from '../lib/dom';\nimport { transitionEvent } from '../lib/supportEvents';\n\nexport const useWaitTransitionFinish = () => {\n const timeoutRef = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n const { document } = useDOM();\n const detach = React.useRef(noop);\n\n const remove = React.useCallback(() => {\n detach.current();\n detach.current = noop;\n }, []);\n\n const waitTransitionFinish = React.useCallback(\n (element: HTMLElement | null
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useWaitTransitionFinish.ts"],"sourcesContent":["import * as React from 'react';\nimport { noop } from '@vkontakte/vkjs';\nimport { useDOM } from '../lib/dom';\nimport { transitionEvent } from '../lib/supportEvents';\n\nexport const useWaitTransitionFinish = () => {\n const timeoutRef = React.useRef<ReturnType<typeof setTimeout> | null>(null);\n const { document } = useDOM();\n const detach = React.useRef(noop);\n\n const remove = React.useCallback(() => {\n detach.current();\n detach.current = noop;\n }, []);\n\n const waitTransitionFinish = React.useCallback(\n (\n element: HTMLElement | undefined | null,\n eventHandler: VoidFunction,\n durationFallback: number,\n ) => {\n if (element) {\n if (!document?.hidden && transitionEvent.supported && transitionEvent.name) {\n remove();\n element.addEventListener(transitionEvent.name, eventHandler);\n detach.current = () => {\n if (transitionEvent.name) {\n element.removeEventListener(transitionEvent.name, eventHandler);\n }\n };\n } else {\n if (timeoutRef?.current) {\n clearTimeout(timeoutRef.current);\n }\n timeoutRef.current = setTimeout(eventHandler, durationFallback);\n }\n }\n },\n [document, remove, timeoutRef],\n );\n\n return {\n waitTransitionFinish,\n };\n};\n"],"names":["useWaitTransitionFinish","timeoutRef","React","useRef","document","useDOM","detach","noop","remove","useCallback","current","waitTransitionFinish","element","eventHandler","durationFallback","hidden","transitionEvent","supported","name","addEventListener","removeEventListener","clearTimeout","setTimeout"],"mappings":";;;;+BAKaA;;;eAAAA;;;;2DALU;oBACF;mBACE;6BACS;AAEzB,IAAMA,0BAA0B,WAAM;IAC3C,IAAMC,aAAaC,OAAMC,MAAM,CAAuC,IAAI;IAC1E,IAAM,AAAEC,WAAaC,IAAAA,WAAM,IAAnBD;IACR,IAAME,SAASJ,OAAMC,MAAM,CAACI,UAAI;IAEhC,IAAMC,SAASN,OAAMO,WAAW,CAAC,WAAM;QACrCH,OAAOI,OAAO;QACdJ,OAAOI,OAAO,GAAGH,UAAI;IACvB,GAAG,EAAE;IAEL,IAAMI,uBAAuBT,OAAMO,WAAW,CAC5C,SACEG,SACAC,cACAC,kBACG;QACH,IAAIF,SAAS;YACX,IAAI,CAACR,CAAAA,qBAAAA,sBAAAA,KAAAA,IAAAA,SAAUW,MAAM,AAAD,KAAKC,8BAAe,CAACC,SAAS,IAAID,8BAAe,CAACE,IAAI,EAAE;gBAC1EV;gBACAI,QAAQO,gBAAgB,CAACH,8BAAe,CAACE,IAAI,EAAEL;gBAC/CP,OAAOI,OAAO,GAAG,WAAM;oBACrB,IAAIM,8BAAe,CAACE,IAAI,EAAE;wBACxBN,QAAQQ,mBAAmB,CAACJ,8BAAe,CAACE,IAAI,EAAEL;oBACpD,CAAC;gBACH;YACF,OAAO;gBACL,IAAIZ,uBAAAA,wBAAAA,KAAAA,IAAAA,WAAYS,OAAO,EAAE;oBACvBW,aAAapB,WAAWS,OAAO;gBACjC,CAAC;gBACDT,WAAWS,OAAO,GAAGY,WAAWT,cAAcC;YAChD,CAAC;QACH,CAAC;IACH,GACA;QAACV;QAAUI;QAAQP;KAAW;IAGhC,OAAO;QACLU,sBAAAA;IACF;AACF"}
|
package/dist/cjs/index.d.ts
CHANGED
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import './lib/polyfills';
|
|
2
2
|
import './styles/constants.css';
|
|
3
|
-
import './styles/animations.css';
|
|
4
3
|
import './styles/adaptivity.module.css';
|
|
5
4
|
export { AppRoot } from './components/AppRoot/AppRoot';
|
|
6
5
|
export type { AppRootProps } from './components/AppRoot/AppRoot';
|
|
@@ -84,7 +83,7 @@ export type { SnackbarProps } from './components/Snackbar/Snackbar';
|
|
|
84
83
|
* Modals
|
|
85
84
|
*/
|
|
86
85
|
export { ModalRoot } from './components/ModalRoot/ModalRootAdaptive';
|
|
87
|
-
export type { ModalRootProps } from './components/ModalRoot/
|
|
86
|
+
export type { ModalRootProps } from './components/ModalRoot/types';
|
|
88
87
|
export { withModalRootContext } from './components/ModalRoot/withModalRootContext';
|
|
89
88
|
export { ModalRootContext } from './components/ModalRoot/ModalRootContext';
|
|
90
89
|
export { ModalPage } from './components/ModalPage/ModalPage';
|
|
@@ -261,6 +260,9 @@ export { ModalCardBase } from './components/ModalCardBase/ModalCardBase';
|
|
|
261
260
|
export type { ModalCardBaseProps } from './components/ModalCardBase/ModalCardBase';
|
|
262
261
|
export { VisuallyHiddenInput } from './components/VisuallyHiddenInput/VisuallyHiddenInput';
|
|
263
262
|
export type { VisuallyHiddenInputProps } from './components/VisuallyHiddenInput/VisuallyHiddenInput';
|
|
263
|
+
export { VisuallyHidden } from './components/VisuallyHidden/VisuallyHidden';
|
|
264
|
+
export { AdaptiveIconRenderer } from './components/AdaptiveIconRenderer/AdaptiveIconRenderer';
|
|
265
|
+
export type { AdaptiveIconRendererProps } from './components/AdaptiveIconRenderer/AdaptiveIconRenderer';
|
|
264
266
|
/**
|
|
265
267
|
* Wrappers
|
|
266
268
|
*/
|
package/dist/cjs/index.js
CHANGED
|
@@ -378,6 +378,12 @@ _export(exports, {
|
|
|
378
378
|
VisuallyHiddenInput: function() {
|
|
379
379
|
return _visuallyHiddenInput.VisuallyHiddenInput;
|
|
380
380
|
},
|
|
381
|
+
VisuallyHidden: function() {
|
|
382
|
+
return _visuallyHidden.VisuallyHidden;
|
|
383
|
+
},
|
|
384
|
+
AdaptiveIconRenderer: function() {
|
|
385
|
+
return _adaptiveIconRenderer.AdaptiveIconRenderer;
|
|
386
|
+
},
|
|
381
387
|
AdaptivityProvider: function() {
|
|
382
388
|
return _adaptivityProvider.AdaptivityProvider;
|
|
383
389
|
},
|
|
@@ -622,6 +628,8 @@ var _panelHeaderSubmit = require("./components/PanelHeaderSubmit/PanelHeaderSubm
|
|
|
622
628
|
var _panelHeaderEdit = require("./components/PanelHeaderEdit/PanelHeaderEdit");
|
|
623
629
|
var _modalCardBase = require("./components/ModalCardBase/ModalCardBase");
|
|
624
630
|
var _visuallyHiddenInput = require("./components/VisuallyHiddenInput/VisuallyHiddenInput");
|
|
631
|
+
var _visuallyHidden = require("./components/VisuallyHidden/VisuallyHidden");
|
|
632
|
+
var _adaptiveIconRenderer = require("./components/AdaptiveIconRenderer/AdaptiveIconRenderer");
|
|
625
633
|
var _adaptivityProvider = require("./components/AdaptivityProvider/AdaptivityProvider");
|
|
626
634
|
var _configProvider = require("./components/ConfigProvider/ConfigProvider");
|
|
627
635
|
var _configProviderContext = require("./components/ConfigProvider/ConfigProviderContext");
|