@vkontakte/vkui 4.35.3 → 4.36.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cache/.eslintcache +1 -1
- package/.cache/.stylelintcache +1 -1
- package/.cache/.tsbuildinfo +21605 -18307
- package/.cache/ts/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
- package/.cache/ts/src/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
- package/.cache/ts/src/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/.cache/ts/src/components/ButtonGroup/ButtonGroup.d.ts +6 -2
- package/.cache/ts/src/components/Chip/Chip.d.ts +12 -5
- package/.cache/ts/src/components/ChipsInput/ChipsInput.d.ts +5 -26
- package/.cache/ts/src/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
- package/.cache/ts/src/components/ChipsSelect/ChipsSelect.d.ts +4 -4
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/.cache/ts/src/components/DateInput/DateInput.d.ts +4 -2
- package/.cache/ts/src/components/DateRangeInput/DateRangeInput.d.ts +4 -2
- package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +4 -2
- package/.cache/ts/src/components/FormField/FormField.d.ts +2 -1
- package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
- package/.cache/ts/src/components/FormStatus/FormStatus.d.ts +1 -0
- package/.cache/ts/src/components/Input/Input.d.ts +1 -1
- package/.cache/ts/src/components/List/List.d.ts +2 -1
- package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +13 -1
- package/.cache/ts/src/components/NativeSelect/NativeSelect.d.ts +3 -2
- package/.cache/ts/src/components/Select/Select.d.ts +1 -1
- package/.cache/ts/src/components/SelectMimicry/SelectMimicry.d.ts +2 -2
- package/.cache/ts/src/components/Textarea/Textarea.d.ts +3 -2
- package/.cache/ts/src/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
- package/{dist/cssm/components/ChipsSelect → .cache/ts/src/hooks}/useChipsSelect.d.ts +4 -4
- package/.cache/ts/src/index.d.ts +3 -0
- package/.cache/ts/src/tokenized/index.d.ts +56 -0
- package/README.md +3 -2
- package/dist/cjs/components/ActionSheet/ActionSheet.js +4 -4
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +24 -0
- package/dist/cjs/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js +10 -8
- package/dist/cjs/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js +4 -5
- package/dist/cjs/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +15 -39
- package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js +2 -3
- package/dist/cjs/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cjs/components/Alert/Alert.js +11 -12
- package/dist/cjs/components/Alert/Alert.js.map +1 -1
- package/dist/cjs/components/AppRoot/AppRoot.js +2 -5
- package/dist/cjs/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.js +4 -17
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cjs/components/CalendarDay/CalendarDay.js +4 -21
- package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +2 -5
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Chip/Chip.js.map +1 -1
- package/dist/cjs/components/ChipsInput/ChipsInput.js +15 -198
- package/dist/cjs/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js +215 -0
- package/dist/cjs/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +44 -27
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js +32 -31
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/DateInput/DateInput.js +4 -2
- package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js +4 -2
- package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js +16 -7
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.js +4 -2
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +12 -3
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/FormStatus/FormStatus.js +4 -6
- package/dist/cjs/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cjs/components/Header/Header.js +3 -11
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/IconButton/IconButton.js +4 -3
- package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
- package/dist/cjs/components/Input/Input.js +4 -2
- package/dist/cjs/components/Input/Input.js.map +1 -1
- package/dist/cjs/components/List/List.js.map +1 -1
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +1 -6
- package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cjs/components/ModalPage/ModalPage.js +11 -10
- package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js +3 -4
- package/dist/cjs/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +4 -18
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +3 -11
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/NativeSelect/NativeSelect.js +4 -2
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Panel/Panel.js +4 -10
- package/dist/cjs/components/Panel/Panel.js.map +1 -1
- package/dist/cjs/components/PanelHeader/PanelHeader.js +2 -11
- package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +2 -7
- package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
- package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +1 -1
- package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +4 -2
- package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +4 -8
- package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +1 -1
- package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +1 -1
- package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cjs/components/PromoBanner/PromoBanner.js +1 -6
- package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cjs/components/Search/Search.js +7 -9
- package/dist/cjs/components/Search/Search.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +4 -2
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js +2 -5
- package/dist/cjs/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -7
- package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +1 -6
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -5
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.js +8 -16
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +4 -2
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/UsersStack/UsersStack.js +71 -34
- package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.js +1 -10
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/{components/ChipsInput → hooks}/useChipsInput.js +0 -0
- package/dist/cjs/hooks/useChipsInput.js.map +1 -0
- package/dist/cjs/{components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
- package/dist/cjs/hooks/useChipsSelect.js.map +1 -0
- package/dist/cjs/index.js +8 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/animate.js +2 -2
- package/dist/cjs/lib/animate.js.map +1 -1
- package/dist/cjs/lib/testing.js +2 -2
- package/dist/cjs/lib/testing.js.map +1 -1
- package/dist/cjs/lib/touch.js +2 -2
- package/dist/cjs/lib/touch.js.map +1 -1
- package/dist/cjs/tokenized/index.js +232 -0
- package/dist/cjs/tokenized/index.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheet.js +4 -4
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
- package/dist/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
- package/dist/components/ActionSheet/ActionSheetDropdown.js +7 -7
- package/dist/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
- package/dist/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
- package/dist/components/ActionSheetItem/ActionSheetItem.js +16 -36
- package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
- package/dist/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/components/Alert/Alert.js +12 -12
- package/dist/components/Alert/Alert.js.map +1 -1
- package/dist/components/AppRoot/AppRoot.js +2 -5
- package/dist/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/components/Avatar/Avatar.js +4 -17
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/ButtonGroup/ButtonGroup.d.ts +6 -2
- package/dist/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/components/CalendarDay/CalendarDay.js +4 -21
- package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +1 -3
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Chip/Chip.d.ts +12 -5
- package/dist/components/Chip/Chip.js.map +1 -1
- package/dist/components/ChipsInput/ChipsInput.d.ts +5 -26
- package/dist/components/ChipsInput/ChipsInput.js +14 -183
- package/dist/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
- package/dist/components/ChipsInputBase/ChipsInputBase.js +188 -0
- package/dist/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
- package/dist/components/ChipsSelect/ChipsSelect.d.ts +4 -4
- package/dist/components/ChipsSelect/ChipsSelect.js +42 -26
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/dist/components/CustomSelect/CustomSelect.js +32 -31
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/DateInput/DateInput.d.ts +4 -2
- package/dist/components/DateInput/DateInput.js +4 -2
- package/dist/components/DateInput/DateInput.js.map +1 -1
- package/dist/components/DateRangeInput/DateRangeInput.d.ts +4 -2
- package/dist/components/DateRangeInput/DateRangeInput.js +4 -2
- package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.d.ts +4 -2
- package/dist/components/DropdownIcon/DropdownIcon.js +15 -7
- package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/components/FormField/FormField.d.ts +2 -1
- package/dist/components/FormField/FormField.js +4 -2
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/FormStatus/FormStatus.d.ts +1 -0
- package/dist/components/FormStatus/FormStatus.js +4 -4
- package/dist/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/components/Header/Header.js +3 -10
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/IconButton/IconButton.js +4 -3
- package/dist/components/IconButton/IconButton.js.map +1 -1
- package/dist/components/Input/Input.d.ts +1 -1
- package/dist/components/Input/Input.js +4 -2
- package/dist/components/Input/Input.js.map +1 -1
- package/dist/components/List/List.d.ts +2 -1
- package/dist/components/List/List.js.map +1 -1
- package/dist/components/ModalDismissButton/ModalDismissButton.js +1 -4
- package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/components/ModalPage/ModalPage.d.ts +13 -1
- package/dist/components/ModalPage/ModalPage.js +12 -10
- package/dist/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/components/ModalPageHeader/ModalPageHeader.js +3 -3
- package/dist/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +4 -18
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +3 -11
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/NativeSelect/NativeSelect.d.ts +3 -2
- package/dist/components/NativeSelect/NativeSelect.js +4 -2
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Panel/Panel.js +4 -8
- package/dist/components/Panel/Panel.js.map +1 -1
- package/dist/components/PanelHeader/PanelHeader.js +2 -11
- package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
- package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
- package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
- package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
- package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
- package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
- package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
- package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/components/PromoBanner/PromoBanner.js +1 -4
- package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/components/Search/Search.js +6 -8
- package/dist/components/Search/Search.js.map +1 -1
- package/dist/components/Select/Select.d.ts +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.d.ts +2 -2
- package/dist/components/SelectMimicry/SelectMimicry.js +4 -2
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/dist/components/SliderSwitch/SliderSwitch.js +1 -4
- package/dist/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -5
- package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js +1 -4
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js +2 -5
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Tappable/Tappable.js +3 -10
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/Textarea/Textarea.d.ts +3 -2
- package/dist/components/Textarea/Textarea.js +4 -2
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/UsersStack/UsersStack.js +69 -28
- package/dist/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/components/View/ViewInfinite.js +1 -10
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components.css +93 -15
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.css +3 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +4 -4
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.d.ts +3 -0
- package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js +10 -0
- package/dist/cssm/components/ActionSheet/ActionSheetDefaultIosCloseItem.js.map +1 -0
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js +7 -7
- package/dist/cssm/components/ActionSheet/ActionSheetDropdown.js.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js +3 -4
- package/dist/cssm/components/ActionSheet/ActionSheetDropdownDesktop.js.map +1 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.css +7 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.d.ts +5 -1
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +16 -36
- package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.d.ts +4 -4
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js +2 -4
- package/dist/cssm/components/AdaptivityProvider/AdaptivityProvider.js.map +1 -1
- package/dist/cssm/components/Alert/Alert.css +7 -1
- package/dist/cssm/components/Alert/Alert.js +12 -12
- package/dist/cssm/components/Alert/Alert.js.map +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.css +1 -1
- package/dist/cssm/components/AppRoot/AppRoot.js +2 -5
- package/dist/cssm/components/AppRoot/AppRoot.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.js +4 -17
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/ButtonGroup/ButtonGroup.d.ts +6 -2
- package/dist/cssm/components/ButtonGroup/ButtonGroup.js.map +1 -1
- package/dist/cssm/components/CalendarDay/CalendarDay.js +4 -21
- package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +1 -3
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -1
- package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -1
- package/dist/cssm/components/Chip/Chip.css +1 -1
- package/dist/cssm/components/Chip/Chip.d.ts +12 -5
- package/dist/cssm/components/Chip/Chip.js.map +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.css +1 -1
- package/dist/cssm/components/ChipsInput/ChipsInput.d.ts +5 -26
- package/dist/cssm/components/ChipsInput/ChipsInput.js +14 -183
- package/dist/cssm/components/ChipsInput/ChipsInput.js.map +1 -1
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.css +1 -0
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.d.ts +17 -0
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js +189 -0
- package/dist/cssm/components/ChipsInputBase/ChipsInputBase.js.map +1 -0
- package/dist/cssm/components/ChipsSelect/ChipsSelect.css +1 -1
- package/dist/cssm/components/ChipsSelect/ChipsSelect.d.ts +4 -4
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +42 -26
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.css +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.d.ts +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +32 -31
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/DateInput/DateInput.css +1 -1
- package/dist/cssm/components/DateInput/DateInput.d.ts +4 -2
- package/dist/cssm/components/DateInput/DateInput.js +4 -2
- package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.css +1 -1
- package/dist/cssm/components/DateRangeInput/DateRangeInput.d.ts +4 -2
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js +4 -2
- package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.d.ts +4 -2
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js +15 -8
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -1
- package/dist/cssm/components/FormField/FormField.css +4 -4
- package/dist/cssm/components/FormField/FormField.d.ts +2 -1
- package/dist/cssm/components/FormField/FormField.js +4 -2
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +5 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +9 -3
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/FormStatus/FormStatus.css +3 -1
- package/dist/cssm/components/FormStatus/FormStatus.d.ts +1 -0
- package/dist/cssm/components/FormStatus/FormStatus.js +4 -4
- package/dist/cssm/components/FormStatus/FormStatus.js.map +1 -1
- package/dist/cssm/components/Header/Header.css +1 -1
- package/dist/cssm/components/Header/Header.js +3 -10
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/IconButton/IconButton.js +4 -3
- package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
- package/dist/cssm/components/Input/Input.css +1 -1
- package/dist/cssm/components/Input/Input.d.ts +1 -1
- package/dist/cssm/components/Input/Input.js +4 -2
- package/dist/cssm/components/Input/Input.js.map +1 -1
- package/dist/cssm/components/List/List.d.ts +2 -1
- package/dist/cssm/components/List/List.js +1 -1
- package/dist/cssm/components/List/List.js.map +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.css +1 -1
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +1 -4
- package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
- package/dist/cssm/components/ModalPage/ModalPage.css +5 -1
- package/dist/cssm/components/ModalPage/ModalPage.d.ts +13 -1
- package/dist/cssm/components/ModalPage/ModalPage.js +12 -10
- package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.css +1 -1
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js +3 -3
- package/dist/cssm/components/ModalPageHeader/ModalPageHeader.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +4 -18
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +3 -11
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/NativeSelect/NativeSelect.d.ts +3 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js +4 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Panel/Panel.css +19 -1
- package/dist/cssm/components/Panel/Panel.js +4 -8
- package/dist/cssm/components/Panel/Panel.js.map +1 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.css +9 -1
- package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -11
- package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +2 -6
- package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.css +1 -1
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +2 -7
- package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +2 -2
- package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.css +5 -1
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +4 -3
- package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.css +1 -1
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +3 -7
- package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +2 -2
- package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +2 -2
- package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.css +3 -1
- package/dist/cssm/components/PromoBanner/PromoBanner.js +1 -4
- package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
- package/dist/cssm/components/Search/Search.css +27 -1
- package/dist/cssm/components/Search/Search.js +6 -8
- package/dist/cssm/components/Search/Search.js.map +1 -1
- package/dist/cssm/components/Select/Select.css +1 -1
- package/dist/cssm/components/Select/Select.d.ts +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.d.ts +2 -2
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +4 -2
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js +1 -4
- package/dist/cssm/components/SliderSwitch/SliderSwitch.js.map +1 -1
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -5
- package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.css +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +1 -4
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.css +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +2 -5
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/TabsItem/TabsItem.css +1 -1
- package/dist/cssm/components/Tappable/Tappable.js +3 -10
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.css +1 -1
- package/dist/cssm/components/Textarea/Textarea.d.ts +3 -2
- package/dist/cssm/components/Textarea/Textarea.js +4 -2
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.css +1 -1
- package/dist/cssm/components/UsersStack/UsersStack.js +69 -28
- package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +1 -10
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
- package/dist/{components/ChipsInput → cssm/hooks}/useChipsInput.js +0 -0
- package/dist/cssm/hooks/useChipsInput.js.map +1 -0
- package/{.cache/ts/src/components/ChipsSelect → dist/cssm/hooks}/useChipsSelect.d.ts +4 -4
- package/dist/{components/ChipsSelect → cssm/hooks}/useChipsSelect.js +1 -1
- package/dist/cssm/hooks/useChipsSelect.js.map +1 -0
- package/dist/cssm/index.d.ts +3 -0
- package/dist/cssm/index.js +1 -0
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/animate.js +1 -1
- package/dist/cssm/lib/animate.js.map +1 -1
- package/dist/cssm/lib/testing.js +1 -1
- package/dist/cssm/lib/testing.js.map +1 -1
- package/dist/cssm/lib/touch.js +1 -1
- package/dist/cssm/lib/touch.js.map +1 -1
- package/dist/cssm/styles/components.css +93 -15
- package/dist/cssm/styles/themes.css +1 -1
- package/dist/cssm/styles/unstable.css +1 -1
- package/dist/cssm/tokenized/index.d.ts +56 -0
- package/dist/cssm/tokenized/index.js +29 -0
- package/dist/cssm/tokenized/index.js.map +1 -1
- package/dist/{components/ChipsInput → hooks}/useChipsInput.d.ts +4 -3
- package/dist/{cssm/components/ChipsInput → hooks}/useChipsInput.js +0 -0
- package/dist/hooks/useChipsInput.js.map +1 -0
- package/dist/{components/ChipsSelect → hooks}/useChipsSelect.d.ts +4 -4
- package/dist/{cssm/components/ChipsSelect → hooks}/useChipsSelect.js +1 -1
- package/dist/hooks/useChipsSelect.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/animate.js +1 -1
- package/dist/lib/animate.js.map +1 -1
- package/dist/lib/testing.js +1 -1
- package/dist/lib/testing.js.map +1 -1
- package/dist/lib/touch.js +1 -1
- package/dist/lib/touch.js.map +1 -1
- package/dist/tokenized/index.d.ts +56 -0
- package/dist/tokenized/index.js +29 -0
- package/dist/tokenized/index.js.map +1 -1
- package/dist/unstable.css +1 -1
- package/dist/unstable.css.map +1 -1
- package/dist/vkui.css +94 -16
- package/dist/vkui.css.map +1 -1
- package/package.json +9 -9
- package/src/components/ActionSheet/ActionSheet.css +31 -59
- package/src/components/ActionSheet/ActionSheet.tsx +4 -7
- package/src/components/ActionSheet/ActionSheetDefaultIosCloseItem.tsx +12 -0
- package/src/components/ActionSheet/ActionSheetDropdown.tsx +9 -6
- package/src/components/ActionSheet/ActionSheetDropdownDesktop.tsx +4 -4
- package/src/components/ActionSheet/Readme.md +6 -30
- package/src/components/ActionSheetItem/ActionSheetItem.css +67 -120
- package/src/components/ActionSheetItem/ActionSheetItem.tsx +42 -71
- package/src/components/AdaptivityProvider/AdaptivityProvider.tsx +5 -5
- package/src/components/Alert/Alert.css +79 -79
- package/src/components/Alert/Alert.tsx +14 -14
- package/src/components/Alert/Readme.md +83 -104
- package/src/components/AppRoot/AppRoot.css +2 -1
- package/src/components/AppRoot/AppRoot.tsx +1 -4
- package/src/components/Avatar/Avatar.tsx +15 -17
- package/src/components/Avatar/Readme.md +3 -3
- package/src/components/ButtonGroup/ButtonGroup.tsx +6 -3
- package/src/components/ButtonGroup/Readme.md +13 -11
- package/src/components/Calendar/Readme.md +3 -0
- package/src/components/CalendarDay/CalendarDay.tsx +21 -20
- package/src/components/CalendarRange/Readme.md +3 -0
- package/src/components/CardScroll/CardScroll.tsx +1 -2
- package/src/components/Cell/CellCheckbox/CellCheckbox.css +2 -2
- package/src/components/Cell/CellDragger/CellDragger.css +1 -1
- package/src/components/Chip/Chip.css +1 -0
- package/src/components/Chip/Chip.tsx +14 -2
- package/src/components/ChipsInput/ChipsInput.css +0 -71
- package/src/components/ChipsInput/ChipsInput.tsx +20 -220
- package/src/components/ChipsInputBase/ChipsInputBase.css +73 -0
- package/src/components/ChipsInputBase/ChipsInputBase.tsx +206 -0
- package/src/components/ChipsSelect/ChipsSelect.css +8 -0
- package/src/components/ChipsSelect/ChipsSelect.tsx +47 -39
- package/src/components/CustomSelect/CustomSelect.css +1 -0
- package/src/components/CustomSelect/CustomSelect.tsx +2 -3
- package/src/components/CustomSelect/Readme.md +8 -2
- package/src/components/DateInput/DateInput.css +1 -1
- package/src/components/DateInput/DateInput.tsx +6 -3
- package/src/components/DateInput/Readme.md +13 -0
- package/src/components/DateRangeInput/DateRangeInput.css +1 -1
- package/src/components/DateRangeInput/DateRangeInput.tsx +6 -3
- package/src/components/DateRangeInput/Readme.md +13 -0
- package/src/components/DropdownIcon/DropdownIcon.tsx +22 -8
- package/src/components/Epic/Readme.md +10 -5
- package/src/components/FormField/FormField.css +58 -6
- package/src/components/FormField/FormField.tsx +3 -0
- package/src/components/FormItem/FormItem.css +5 -3
- package/src/components/FormLayoutGroup/FormLayoutGroup.css +35 -0
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +13 -2
- package/src/components/FormLayoutGroup/Readme.md +58 -48
- package/src/components/FormStatus/FormStatus.css +8 -5
- package/src/components/FormStatus/FormStatus.tsx +4 -8
- package/src/components/Gallery/Readme.md +64 -18
- package/src/components/Header/Header.css +8 -12
- package/src/components/Header/Header.tsx +9 -8
- package/src/components/HorizontalCell/Readme.md +1 -1
- package/src/components/IconButton/IconButton.tsx +2 -2
- package/src/components/Input/Input.css +1 -1
- package/src/components/Input/Input.tsx +2 -0
- package/src/components/List/List.tsx +3 -4
- package/src/components/ModalDismissButton/ModalDismissButton.css +6 -6
- package/src/components/ModalDismissButton/ModalDismissButton.tsx +1 -5
- package/src/components/ModalDismissButton/Readme.md +1 -1
- package/src/components/ModalPage/ModalPage.css +69 -63
- package/src/components/ModalPage/ModalPage.tsx +24 -11
- package/src/components/ModalPageHeader/ModalPageHeader.css +9 -12
- package/src/components/ModalPageHeader/ModalPageHeader.tsx +3 -2
- package/src/components/ModalRoot/ModalRoot.tsx +24 -24
- package/src/components/ModalRoot/ModalRootDesktop.tsx +12 -14
- package/src/components/ModalRoot/Readme.md +8 -3
- package/src/components/NativeSelect/NativeSelect.tsx +5 -2
- package/src/components/Panel/Panel.css +52 -24
- package/src/components/Panel/Panel.tsx +7 -9
- package/src/components/PanelHeader/PanelHeader.css +20 -8
- package/src/components/PanelHeader/PanelHeader.tsx +11 -12
- package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +6 -5
- package/src/components/PanelHeaderButton/PanelHeaderButton.css +8 -15
- package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +6 -6
- package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +2 -6
- package/src/components/PanelHeaderContent/PanelHeaderContent.css +14 -26
- package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +10 -3
- package/src/components/PanelHeaderContext/PanelHeaderContext.css +9 -25
- package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +11 -7
- package/src/components/PanelHeaderContext/Readme.md +85 -101
- package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +2 -2
- package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +2 -6
- package/src/components/PromoBanner/PromoBanner.css +10 -22
- package/src/components/PromoBanner/PromoBanner.tsx +1 -5
- package/src/components/RichTooltip/Readme.md +2 -2
- package/src/components/Search/Search.css +134 -48
- package/src/components/Search/Search.tsx +13 -8
- package/src/components/Select/Select.css +2 -2
- package/src/components/SelectMimicry/Readme.md +3 -3
- package/src/components/SelectMimicry/SelectMimicry.tsx +3 -1
- package/src/components/SliderSwitch/SliderSwitch.tsx +5 -5
- package/src/components/SliderSwitch/SliderSwitchButton.tsx +7 -7
- package/src/components/Snackbar/Readme.md +12 -3
- package/src/components/SplitLayout/Readme.md +1 -1
- package/src/components/SubnavigationBar/SubnavigationBar.css +7 -19
- package/src/components/SubnavigationBar/SubnavigationBar.tsx +1 -8
- package/src/components/SubnavigationButton/SubnavigationButton.css +13 -0
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -4
- package/src/components/TabbarItem/Readme.md +6 -1
- package/src/components/Tabs/Readme.md +10 -2
- package/src/components/TabsItem/TabsItem.css +1 -1
- package/src/components/Tappable/Tappable.tsx +9 -11
- package/src/components/Textarea/Textarea.css +1 -1
- package/src/components/Textarea/Textarea.tsx +5 -2
- package/src/components/Tooltip/Readme.md +2 -2
- package/src/components/Touch/Readme.md +4 -4
- package/src/components/UsersStack/UsersStack.css +42 -0
- package/src/components/UsersStack/UsersStack.tsx +71 -15
- package/src/components/View/ViewInfinite.tsx +14 -14
- package/src/{components/ChipsInput → hooks}/useChipsInput.ts +5 -8
- package/src/{components/ChipsSelect → hooks}/useChipsSelect.ts +4 -4
- package/src/index.ts +3 -0
- package/src/lib/animate.ts +1 -1
- package/src/lib/testing.ts +1 -1
- package/src/lib/touch.ts +1 -1
- package/src/styles/components.css +1 -0
- package/src/tokenized/index.ts +85 -0
- package/.cache/ts/src/components/UsersStack/masks.d.ts +0 -1
- package/dist/cjs/components/ChipsInput/useChipsInput.js.map +0 -1
- package/dist/cjs/components/ChipsSelect/useChipsSelect.js.map +0 -1
- package/dist/cjs/components/UsersStack/masks.js +0 -29
- package/dist/cjs/components/UsersStack/masks.js.map +0 -1
- package/dist/components/ChipsInput/useChipsInput.js.map +0 -1
- package/dist/components/ChipsSelect/useChipsSelect.js.map +0 -1
- package/dist/components/UsersStack/masks.d.ts +0 -1
- package/dist/components/UsersStack/masks.js +0 -20
- package/dist/components/UsersStack/masks.js.map +0 -1
- package/dist/cssm/components/ChipsInput/useChipsInput.js.map +0 -1
- package/dist/cssm/components/ChipsSelect/useChipsSelect.js.map +0 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.css +0 -1
- package/dist/cssm/components/UsersStack/masks.d.ts +0 -1
- package/dist/cssm/components/UsersStack/masks.js +0 -20
- package/dist/cssm/components/UsersStack/masks.js.map +0 -1
- package/src/components/DropdownIcon/DropdownIcon.css +0 -3
- package/src/components/UsersStack/masks.tsx +0 -69
|
@@ -565,16 +565,7 @@ var ViewInfiniteComponent = /*#__PURE__*/function (_React$Component) {
|
|
|
565
565
|
var scrollList = panelId && _this4.scrolls[panelId] || [];
|
|
566
566
|
var scroll = scrollList[scrollList.length - 1] || 0;
|
|
567
567
|
return (0, _jsxRuntime.createScopedElement)("div", {
|
|
568
|
-
|
|
569
|
-
vkuiClass: (0, _classNames.classNames)("View__panel", {
|
|
570
|
-
"View__panel--active": panelId === activePanel,
|
|
571
|
-
"View__panel--prev": panelId === prevPanel,
|
|
572
|
-
"View__panel--next": panelId === nextPanel,
|
|
573
|
-
"View__panel--swipe-back-prev": panelId === swipeBackPrevPanel,
|
|
574
|
-
"View__panel--swipe-back-next": panelId === swipeBackNextPanel,
|
|
575
|
-
"View__panel--swipe-back-success": swipeBackResult === SwipeBackResults.success,
|
|
576
|
-
"View__panel--swipe-back-failed": swipeBackResult === SwipeBackResults.fail
|
|
577
|
-
}),
|
|
568
|
+
vkuiClass: (0, _classNames.classNames)("View__panel", panelId === activePanel && "View__panel--active", panelId === prevPanel && "View__panel--prev", panelId === nextPanel && "View__panel--next", panelId === swipeBackPrevPanel && "View__panel--swipe-back-prev", panelId === swipeBackNextPanel && "View__panel--swipe-back-next", swipeBackResult === SwipeBackResults.success && "View__panel--swipe-back-success", swipeBackResult === SwipeBackResults.fail && "View__panel--swipe-back-failed"),
|
|
578
569
|
onAnimationEnd: isTransitionTarget ? _this4.transitionEndHandler : undefined,
|
|
579
570
|
ref: function ref(el) {
|
|
580
571
|
return panelId !== undefined && (_this4.panelNodes[panelId] = el);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../../src/components/View/ViewInfinite.tsx"],"names":["warn","SwipeBackResults","scrollsCache","ViewInfiniteComponent","props","undefined","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","window","platform","configProvider","IOS","isWebView","startX","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","activePanel","prevScrolls","scrolls","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","nextPanel","document","React","Children","toArray","children","id","animationFinishTimeout","clearTimeout","prevProps","prevState","popout","blurActiveElement","modal","isBackCheck","from","to","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","animationEvent","supported","setTimeout","transitionEndHandler","ANDROID","VKCOM","scrollPosition","prevPanelScrolls","newPanelScrolls","pop","scrollTo","onTransition","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","name","removeEventListener","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","sort","isPrevPanel","isNextPanel","disableAnimation","modifiers","onMoveX","onEnd","compensateScroll","isTransitionTarget","scrollList","el","calcPanelSwipeStyles","marginTop","Component","ViewInfinite","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nconst warn = warnOnce(\"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 popout?: React.ReactNode;\n modal?: React.ReactNode;\n onTransition?(params: TransitionParams & { isBack: boolean }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n 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 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 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 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: number | undefined = undefined;\n private animationFinishTimeout: number | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n }\n\n componentDidUpdate(\n prevProps: ViewInfiniteProps,\n prevState: ViewInfiniteState\n ) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n 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(\n (id) =>\n id === prevProps.activePanel || id === this.props.activePanel\n );\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]: [\n ...prevScrolls,\n this.props.scroll?.getScroll().y,\n ],\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 === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.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(\n 0,\n -1\n );\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.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n 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 (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n\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 = (e: TouchEvent): void => {\n if (swipeBackExcluded(e) || !this.window) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider?.isWebView &&\n (e.startX <= 70 || e.startX >= this.window.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider?.isWebView &&\n this.props.onSwipeBack\n ) {\n if (this.state.animated && e.startX <= 70) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n (this.props.history?.length ?? 0) > 1\n ) {\n if (this.state.activePanel !== null) {\n const prevScrolls = this.scrolls[this.state.activePanel] || [];\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: [\n ...prevScrolls,\n this.props.scroll?.getScroll().y,\n ],\n };\n }\n\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history!.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n id,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n isBackCheck,\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 hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels\n .filter((panel) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined &&\n 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 =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isNextPanel =\n 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 const modifiers = {\n \"View--animated\": !disableAnimation && this.state.animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n const isTransitionTarget =\n 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 // eslint-disable-next-line vkui/no-object-expression-in-arguments\n vkuiClass={classNames(\"View__panel\", {\n \"View__panel--active\": panelId === activePanel,\n \"View__panel--prev\": panelId === prevPanel,\n \"View__panel--next\": panelId === nextPanel,\n \"View__panel--swipe-back-prev\":\n panelId === swipeBackPrevPanel,\n \"View__panel--swipe-back-next\":\n panelId === swipeBackNextPanel,\n \"View__panel--swipe-back-success\":\n swipeBackResult === SwipeBackResults.success,\n \"View__panel--swipe-back-failed\":\n swipeBackResult === SwipeBackResults.fail,\n })}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : undefined\n }\n ref={(el) =>\n panelId !== undefined && (this.panelNodes[panelId] = el)\n }\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{ marginTop: compensateScroll ? -scroll : undefined }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\nexport 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"],"file":"ViewInfinite.js"}
|
|
1
|
+
{"version":3,"sources":["../../../../src/components/View/ViewInfinite.tsx"],"names":["warn","SwipeBackResults","scrollsCache","ViewInfiniteComponent","props","undefined","e","includes","animationName","state","prevPanel","flushTransition","Boolean","isBack","propertyName","target","pickPanel","swipeBackNextPanel","swipeBackResult","fail","onSwipeBackCancel","success","onSwipeBackSuccess","window","platform","configProvider","IOS","isWebView","startX","innerWidth","browserSwipe","setState","onSwipeBack","animated","swipingBack","history","length","activePanel","prevScrolls","scrolls","scroll","getScroll","y","swipebackStartX","swipeBackPrevPanel","slice","swipeBackShift","shiftX","speed","duration","visiblePanels","nextPanel","document","React","Children","toArray","children","id","animationFinishTimeout","clearTimeout","prevProps","prevState","popout","blurActiveElement","modal","isBackCheck","from","to","firstLayerId","panels","map","panel","find","shouldDisableTransitionMotion","animationEvent","supported","setTimeout","transitionEndHandler","ANDROID","VKCOM","scrollPosition","prevPanelScrolls","newPanelScrolls","pop","scrollTo","onTransition","onSwipeBackStart","waitTransitionFinish","swipingBackTransitionEndHandler","transitionMotionEnabled","splitCol","animate","elem","eventHandler","transitionEvent","name","removeEventListener","addEventListener","transitionFinishTimeout","activeElement","blur","panelNodes","panelId","canUseDOM","isPrev","isNext","prevPanelTranslate","nextPanelTranslate","prevPanelShadow","boxShadow","transform","WebkitTransform","_1","nav","restProps","hasPopout","hasModal","filter","sort","isPrevPanel","isNextPanel","disableAnimation","modifiers","onMoveX","onEnd","compensateScroll","isTransitionTarget","scrollList","el","calcPanelSwipeStyles","marginTop","Component","ViewInfinite","SplitColContext","ConfigProviderContext","ScrollContext"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { transitionEvent, animationEvent } from \"../../lib/supportEvents\";\nimport { getClassName } from \"../../helpers/getClassName\";\nimport { IOS, ANDROID, VKCOM } from \"../../lib/platform\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport { HasPlatform } from \"../../types\";\nimport { withPlatform } from \"../../hoc/withPlatform\";\nimport { withContext } from \"../../hoc/withContext\";\nimport {\n ConfigProviderContext,\n ConfigProviderContextInterface,\n} from \"../ConfigProvider/ConfigProviderContext\";\nimport { SplitColContext, SplitColContextProps } from \"../SplitCol/SplitCol\";\nimport { AppRootPortal } from \"../AppRoot/AppRootPortal\";\nimport { canUseDOM, withDOM, DOMProps } from \"../../lib/dom\";\nimport {\n ScrollContext,\n ScrollContextInterface,\n} from \"../AppRoot/ScrollContext\";\nimport { NavTransitionProvider } from \"../NavTransitionContext/NavTransitionContext\";\nimport { getNavId, NavIdProps } from \"../../lib/getNavId\";\nimport { warnOnce } from \"../../lib/warnOnce\";\nimport { swipeBackExcluded } from \"./utils\";\nimport \"./View.css\";\n\nconst warn = warnOnce(\"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 popout?: React.ReactNode;\n modal?: React.ReactNode;\n onTransition?(params: TransitionParams & { isBack: boolean }): void;\n /**\n * callback свайпа назад\n */\n onSwipeBack?(): void;\n /**\n * callback начала анимации свайпа назад.\n */\n onSwipeBackStart?(): void;\n /**\n * callback завершения анимации отмененного пользователем свайпа\n */\n onSwipeBackCancel?(): void;\n history?: string[];\n 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 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 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 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: number | undefined = undefined;\n private animationFinishTimeout: number | undefined = undefined;\n\n get document() {\n return this.props.document;\n }\n\n get window() {\n return this.props.window;\n }\n\n get panels() {\n return React.Children.toArray(this.props.children) as React.ReactElement[];\n }\n\n panelNodes: { [id: string]: HTMLDivElement | null } = {};\n\n componentWillUnmount() {\n const id = getNavId(this.props);\n if (id) {\n scrollsCache[id] = this.scrolls;\n }\n if (this.animationFinishTimeout) {\n clearTimeout(this.animationFinishTimeout);\n }\n }\n\n componentDidUpdate(\n prevProps: ViewInfiniteProps,\n prevState: ViewInfiniteState\n ) {\n this.props.popout && !prevProps.popout && this.blurActiveElement();\n this.props.modal && !prevProps.modal && this.blurActiveElement();\n\n // Нужен переход\n if (\n prevProps.activePanel !== this.props.activePanel &&\n !prevState.swipingBack &&\n !prevState.browserSwipe\n ) {\n 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(\n (id) =>\n id === prevProps.activePanel || id === this.props.activePanel\n );\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]: [\n ...prevScrolls,\n this.props.scroll?.getScroll().y,\n ],\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 === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n }\n\n // Закончилась анимация свайпа назад\n if (\n prevProps.activePanel !== this.props.activePanel &&\n prevState.swipingBack\n ) {\n const nextPanel = this.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(\n 0,\n -1\n );\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.swipingBack && this.state.swipingBack) {\n this.props.onSwipeBackStart && this.props.onSwipeBackStart();\n }\n\n // Началась анимация завершения свайпа назад.\n if (!prevState.swipeBackResult && this.state.swipeBackResult) {\n this.waitTransitionFinish(\n this.pickPanel(this.state.swipeBackNextPanel),\n this.swipingBackTransitionEndHandler\n );\n }\n\n // Если свайп назад отменился (когда пользователь недостаточно сильно свайпнул)\n if (\n prevState.swipeBackResult === SwipeBackResults.fail &&\n !this.state.swipeBackResult &&\n this.state.activePanel !== null\n ) {\n 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 (\n prevProps.activePanel !== this.props.activePanel &&\n this.state.browserSwipe\n ) {\n this.setState({\n browserSwipe: false,\n nextPanel: null,\n prevPanel: null,\n animated: false,\n visiblePanels: [this.props.activePanel],\n activePanel: this.props.activePanel,\n });\n }\n }\n\n shouldDisableTransitionMotion(): boolean {\n return (\n this.props.configProvider?.transitionMotionEnabled === false ||\n !this.props.splitCol?.animate\n );\n }\n\n waitTransitionFinish(\n elem: HTMLElement | null | undefined,\n eventHandler: TransitionEventHandler\n ): void {\n if (transitionEvent.supported && transitionEvent.name && elem) {\n elem.removeEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n elem.addEventListener(\n transitionEvent.name as keyof HTMLElementEventMap,\n eventHandler as EventListener\n );\n } else {\n if (this.transitionFinishTimeout) {\n clearTimeout(this.transitionFinishTimeout);\n }\n\n this.transitionFinishTimeout = setTimeout(\n eventHandler,\n this.props.platform === ANDROID || this.props.platform === VKCOM\n ? 300\n : 600\n );\n }\n }\n\n blurActiveElement(): void {\n if (typeof this.window !== \"undefined\" && this.document?.activeElement) {\n (this.document.activeElement as HTMLElement).blur();\n }\n }\n\n pickPanel(id: string | null) {\n if (id === null) {\n return undefined;\n }\n return this.panelNodes[id];\n }\n\n flushTransition(prevPanel: string, isBack: boolean) {\n const activePanel = this.props.activePanel;\n\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 = (e: TouchEvent): void => {\n if (swipeBackExcluded(e) || !this.window) {\n return;\n }\n\n const { platform, configProvider } = this.props;\n\n if (\n platform === IOS &&\n !configProvider?.isWebView &&\n (e.startX <= 70 || e.startX >= this.window.innerWidth - 70) &&\n !this.state.browserSwipe\n ) {\n this.setState({ browserSwipe: true });\n }\n\n if (\n platform === IOS &&\n configProvider?.isWebView &&\n this.props.onSwipeBack\n ) {\n if (this.state.animated && e.startX <= 70) {\n return;\n }\n\n if (\n e.startX <= 70 &&\n !this.state.swipingBack &&\n (this.props.history?.length ?? 0) > 1\n ) {\n if (this.state.activePanel !== null) {\n const prevScrolls = this.scrolls[this.state.activePanel] || [];\n this.scrolls = {\n ...this.scrolls,\n [this.state.activePanel]: [\n ...prevScrolls,\n this.props.scroll?.getScroll().y,\n ],\n };\n }\n\n this.setState({\n swipingBack: true,\n swipebackStartX: e.startX,\n swipeBackPrevPanel: this.state.activePanel,\n swipeBackNextPanel: this.props.history!.slice(-2)[0],\n });\n }\n if (this.state.swipingBack) {\n let swipeBackShift;\n if (e.shiftX < 0) {\n swipeBackShift = 0;\n } else if (\n e.shiftX >\n this.window.innerWidth - this.state.swipebackStartX\n ) {\n swipeBackShift = this.window.innerWidth;\n } else {\n swipeBackShift = e.shiftX;\n }\n this.setState({ swipeBackShift });\n }\n }\n };\n\n onEnd = (e: TouchEvent): void => {\n if (this.state.swipingBack && this.window) {\n const speed = (this.state.swipeBackShift / e.duration) * 1000;\n if (this.state.swipeBackShift === 0) {\n this.onSwipeBackCancel();\n } else if (this.state.swipeBackShift >= this.window.innerWidth) {\n this.onSwipeBackSuccess();\n } else if (\n speed > 250 ||\n this.state.swipebackStartX + this.state.swipeBackShift >\n this.window.innerWidth / 2\n ) {\n this.setState({ swipeBackResult: SwipeBackResults.success });\n } else {\n this.setState({ swipeBackResult: SwipeBackResults.fail });\n }\n }\n };\n\n calcPanelSwipeStyles(panelId: string | undefined): React.CSSProperties {\n if (!canUseDOM || !this.window) {\n return {};\n }\n\n const isPrev = panelId === this.state.swipeBackPrevPanel;\n const isNext = panelId === this.state.swipeBackNextPanel;\n\n if ((!isPrev && !isNext) || this.state.swipeBackResult) {\n return {};\n }\n\n let prevPanelTranslate = `${this.state.swipeBackShift}px`;\n let nextPanelTranslate = `${\n -50 + (this.state.swipeBackShift * 100) / this.window.innerWidth / 2\n }%`;\n let prevPanelShadow =\n (0.3 * (this.window.innerWidth - this.state.swipeBackShift)) /\n this.window.innerWidth;\n\n if (this.state.swipeBackResult) {\n return isPrev\n ? { boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})` }\n : {};\n }\n\n if (isNext) {\n return {\n transform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${nextPanelTranslate}, 0, 0)`,\n };\n }\n if (isPrev) {\n return {\n transform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n WebkitTransform: `translate3d(${prevPanelTranslate}, 0, 0)`,\n boxShadow: `-2px 0 12px rgba(0, 0, 0, ${prevPanelShadow})`,\n };\n }\n\n return {};\n }\n\n render() {\n const {\n popout,\n modal,\n platform,\n activePanel: _1,\n splitCol,\n configProvider,\n history,\n id,\n nav,\n onTransition,\n onSwipeBack,\n onSwipeBackStart,\n onSwipeBackCancel,\n window,\n document,\n scroll,\n isBackCheck,\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 hasPopout = !!popout;\n const hasModal = !!modal;\n\n const panels = this.panels\n .filter((panel) => {\n const panelId = getNavId(panel.props, warn);\n\n return (\n (panelId !== undefined &&\n 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 =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const isNextPanel =\n 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 const modifiers = {\n \"View--animated\": !disableAnimation && this.state.animated,\n \"View--swiping-back\": !disableAnimation && this.state.swipingBack,\n \"View--no-motion\": disableAnimation,\n };\n\n return (\n <Touch\n Component=\"section\"\n {...restProps}\n vkuiClass={classNames(getClassName(\"View\", platform), modifiers)}\n onMoveX={this.onMoveX}\n onEnd={this.onEnd}\n >\n <div vkuiClass=\"View__panels\">\n {panels.map((panel: React.ReactElement) => {\n const panelId = getNavId(panel.props, warn);\n const isPrev =\n panelId === prevPanel || panelId === swipeBackPrevPanel;\n const compensateScroll =\n isPrev ||\n panelId === swipeBackNextPanel ||\n (panelId === nextPanel && isBack);\n const isTransitionTarget =\n 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 vkuiClass={classNames(\n \"View__panel\",\n panelId === activePanel && \"View__panel--active\",\n panelId === prevPanel && \"View__panel--prev\",\n panelId === nextPanel && \"View__panel--next\",\n panelId === swipeBackPrevPanel &&\n \"View__panel--swipe-back-prev\",\n panelId === swipeBackNextPanel &&\n \"View__panel--swipe-back-next\",\n swipeBackResult === SwipeBackResults.success &&\n \"View__panel--swipe-back-success\",\n swipeBackResult === SwipeBackResults.fail &&\n \"View__panel--swipe-back-failed\"\n )}\n onAnimationEnd={\n isTransitionTarget ? this.transitionEndHandler : undefined\n }\n ref={(el) =>\n panelId !== undefined && (this.panelNodes[panelId] = el)\n }\n style={this.calcPanelSwipeStyles(panelId)}\n key={panelId}\n >\n <div\n vkuiClass=\"View__panel-in\"\n style={{ marginTop: compensateScroll ? -scroll : undefined }}\n >\n <NavTransitionProvider\n entering={\n panelId === nextPanel || panelId === swipeBackNextPanel\n }\n >\n {panel}\n </NavTransitionProvider>\n </div>\n </div>\n );\n })}\n </div>\n <AppRootPortal>\n {hasPopout && <div vkuiClass=\"View__popout\">{popout}</div>}\n {hasModal && <div vkuiClass=\"View__modal\">{modal}</div>}\n </AppRootPortal>\n </Touch>\n );\n }\n}\n\nexport 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"],"file":"ViewInfinite.js"}
|
|
File without changes
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useChipsInput.ts"],"names":["useChipsInput","props","value","getOptionValue","onChange","onInputChange","getNewOptionData","React","useState","inputValue","fieldValue","setFieldValue","selectedOptions","setSelectedOptions","clearInput","useCallback","target","handleInputChange","e","toggleOption","newOption","newSelectedOptions","filter","option","push","addOption","addOptionFromInput","trimmedValue","trim","undefined","removeOption","useEffect"],"mappings":"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","sourcesContent":["import * as React from \"react\";\nimport { ChipOption } from \"../components/Chip/Chip\";\nimport { ChipsInputBaseProps } from \"../components/ChipsInputBase/ChipsInputBase\";\n\nexport const useChipsInput = <Option extends ChipOption>(\n props: Partial<ChipsInputBaseProps<Option>>\n) => {\n const { value, getOptionValue, onChange, onInputChange, getNewOptionData } =\n props;\n\n const [fieldValue, setFieldValue] = React.useState(props.inputValue);\n const [selectedOptions, setSelectedOptions] = React.useState(value ?? []);\n\n const clearInput = React.useCallback(() => {\n setFieldValue(\"\");\n onInputChange!({ target: { value: \"\" } } as any);\n }, [onInputChange]);\n\n const handleInputChange = React.useCallback(\n (e: React.ChangeEvent<HTMLInputElement>) => {\n setFieldValue(e.target.value);\n onInputChange!(e);\n },\n [onInputChange]\n );\n\n const toggleOption = React.useCallback(\n (newOption: Option, value?: boolean) => {\n const newSelectedOptions = selectedOptions.filter(\n (option: Option) =>\n getOptionValue!(newOption) !== getOptionValue!(option)\n );\n\n if (value === true) {\n newSelectedOptions.push(newOption);\n }\n\n setSelectedOptions(newSelectedOptions);\n onChange!(newSelectedOptions);\n },\n [selectedOptions, getOptionValue, onChange]\n );\n\n const addOption = React.useCallback(\n (newOption: Option) => toggleOption(newOption, true),\n [toggleOption]\n );\n const addOptionFromInput = React.useCallback(() => {\n const trimmedValue = fieldValue?.trim();\n\n if (trimmedValue) {\n addOption(getNewOptionData!(undefined, trimmedValue));\n clearInput();\n }\n }, [addOption, clearInput, getNewOptionData, fieldValue]);\n const removeOption = React.useCallback(\n (value) => {\n toggleOption(getNewOptionData!(undefined, value as string), false);\n },\n [toggleOption, getNewOptionData]\n );\n\n React.useEffect(() => {\n setSelectedOptions(value as Option[]);\n\n return () => setSelectedOptions([]);\n }, [props.value, value]);\n\n React.useEffect(() => {\n setFieldValue(props.inputValue);\n\n return () => setFieldValue(\"\");\n }, [props.inputValue]);\n\n return {\n fieldValue,\n setFieldValue,\n selectedOptions,\n setSelectedOptions,\n clearInput,\n toggleOption,\n addOption,\n addOptionFromInput,\n removeOption,\n handleInputChange,\n };\n};\n"],"file":"useChipsInput.js"}
|
|
@@ -21,7 +21,7 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/sli
|
|
|
21
21
|
|
|
22
22
|
var React = _interopRequireWildcard(require("react"));
|
|
23
23
|
|
|
24
|
-
var _useChipsInput2 = require("
|
|
24
|
+
var _useChipsInput2 = require("./useChipsInput");
|
|
25
25
|
|
|
26
26
|
var _excluded = ["fieldValue", "selectedOptions"];
|
|
27
27
|
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../../../src/hooks/useChipsSelect.ts"],"names":["useChipsSelect","props","options","filterFn","getOptionLabel","getOptionValue","React","useState","opened","setOpened","focusedOptionIndex","setFocusedOptionIndex","focusedOption","setFocusedOption","fieldValue","selectedOptions","chipsInputState","handleInputChange","e","filteredOptions","useMemo","filter","option","length","filteredSet","Set","selected","map","item","includes","delete"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA;;AACA;;;;AAIO,IAAMA,cAAc,GAAG,SAAjBA,cAAiB,CAC5BC,KAD4B,EAEzB;AACH,MAAQC,OAAR,GAA8DD,KAA9D,CAAQC,OAAR;AAAA,MAAiBC,QAAjB,GAA8DF,KAA9D,CAAiBE,QAAjB;AAAA,MAA2BC,cAA3B,GAA8DH,KAA9D,CAA2BG,cAA3B;AAAA,MAA2CC,cAA3C,GAA8DJ,KAA9D,CAA2CI,cAA3C;;AAEA,wBAA4BC,KAAK,CAACC,QAAN,CAAe,KAAf,CAA5B;AAAA;AAAA,MAAOC,MAAP;AAAA,MAAeC,SAAf;;AACA,yBAAoDH,KAAK,CAACC,QAAN,CAElD,CAFkD,CAApD;AAAA;AAAA,MAAOG,kBAAP;AAAA,MAA2BC,qBAA3B;;AAGA,yBAA0CL,KAAK,CAACC,QAAN,CAA8B,IAA9B,CAA1C;AAAA;AAAA,MAAOK,aAAP;AAAA,MAAsBC,gBAAtB;;AAEA,uBACE,mCAAcZ,KAAd,CADF;AAAA,MAAQa,UAAR,kBAAQA,UAAR;AAAA,MAAoBC,eAApB,kBAAoBA,eAApB;AAAA,MAAwCC,eAAxC;;AAGA,MAAMC,iBAAiB,GAAG,SAApBA,iBAAoB,CACxBC,CADwB,EAErB;AACH,QAAI,CAACA,CAAL,EAAQ;AACN;AACD;;AACDF,IAAAA,eAAe,CAACC,iBAAhB,CAAkCC,CAAlC;;AAEA,QAAI,CAACV,MAAL,EAAa;AACXC,MAAAA,SAAS,CAAC,IAAD,CAAT;AACAE,MAAAA,qBAAqB,CAAC,CAAD,CAArB;AACD;AACF,GAZD;;AAcA,MAAIQ,eAAe,GAAGb,KAAK,CAACc,OAAN,CAAc,YAAM;AACxC,WAAOjB,QAAQ,GACXD,OAAO,CAAEmB,MAAT,CAAgB,UAACC,MAAD;AAAA,aACdnB,QAAQ,CAACW,UAAD,EAAaQ,MAAb,EAAqBlB,cAArB,CADM;AAAA,KAAhB,CADW,GAIVF,OAJL;AAKD,GANqB,EAMnB,CAACA,OAAD,EAAUC,QAAV,EAAoBW,UAApB,EAAgCV,cAAhC,CANmB,CAAtB;AAQAe,EAAAA,eAAe,GAAGb,KAAK,CAACc,OAAN,CAAc,YAAM;AACpC,QAAI,CAACD,eAAe,CAACI,MAArB,EAA6B;AAC3B,aAAOJ,eAAP;AACD;;AAED,QAAMK,WAAW,GAAG,IAAIC,GAAJ,CAAQN,eAAR,CAApB;AACA,QAAMO,QAAQ,GAAGX,eAAe,CAACY,GAAhB,CAAoB,UAACC,IAAD;AAAA,aAAUvB,cAAc,CAAEuB,IAAF,CAAxB;AAAA,KAApB,CAAjB;;AANoC,6DAQjBJ,WARiB;AAAA;;AAAA;AAQpC,0DAAgC;AAAA,YAArBI,IAAqB;;AAC9B,YAAIF,QAAQ,CAACG,QAAT,CAAkBxB,cAAc,CAAEuB,IAAF,CAAhC,CAAJ,EAA8C;AAC5CJ,UAAAA,WAAW,CAACM,MAAZ,CAAmBF,IAAnB;AACD;AACF;AAZmC;AAAA;AAAA;AAAA;AAAA;;AAcpC,4CAAWJ,WAAX;AACD,GAfiB,EAef,CAACL,eAAD,EAAkBJ,eAAlB,EAAmCV,cAAnC,CAfe,CAAlB;AAiBA,qEACKW,eADL;AAEEF,IAAAA,UAAU,EAAVA,UAFF;AAGEG,IAAAA,iBAAiB,EAAjBA,iBAHF;AAIET,IAAAA,MAAM,EAANA,MAJF;AAKEC,IAAAA,SAAS,EAATA,SALF;AAMEU,IAAAA,eAAe,EAAfA,eANF;AAOET,IAAAA,kBAAkB,EAAlBA,kBAPF;AAQEC,IAAAA,qBAAqB,EAArBA,qBARF;AASEC,IAAAA,aAAa,EAAbA,aATF;AAUEC,IAAAA,gBAAgB,EAAhBA,gBAVF;AAWEE,IAAAA,eAAe,EAAfA;AAXF;AAaD,CAlEM","sourcesContent":["import * as React from \"react\";\nimport { useChipsInput } from \"./useChipsInput\";\nimport { ChipsSelectProps } from \"../components/ChipsSelect/ChipsSelect\";\nimport { ChipOption } from \"../components/Chip/Chip\";\n\nexport const useChipsSelect = <Option extends ChipOption>(\n props: Partial<ChipsSelectProps<Option>>\n) => {\n const { options, filterFn, getOptionLabel, getOptionValue } = props;\n\n const [opened, setOpened] = React.useState(false);\n const [focusedOptionIndex, setFocusedOptionIndex] = React.useState<\n number | null\n >(0);\n const [focusedOption, setFocusedOption] = React.useState<Option | null>(null);\n\n const { fieldValue, selectedOptions, ...chipsInputState } =\n useChipsInput(props);\n\n const handleInputChange = (\n e: React.ChangeEvent<HTMLInputElement> | undefined\n ) => {\n if (!e) {\n return;\n }\n chipsInputState.handleInputChange(e);\n\n if (!opened) {\n setOpened(true);\n setFocusedOptionIndex(0);\n }\n };\n\n let filteredOptions = React.useMemo(() => {\n return filterFn\n ? options!.filter((option) =>\n filterFn(fieldValue, option, getOptionLabel)\n )\n : (options as Option[]);\n }, [options, filterFn, fieldValue, getOptionLabel]);\n\n filteredOptions = React.useMemo(() => {\n if (!filteredOptions.length) {\n return filteredOptions;\n }\n\n const filteredSet = new Set(filteredOptions);\n const selected = selectedOptions.map((item) => getOptionValue!(item));\n\n for (const item of filteredSet) {\n if (selected.includes(getOptionValue!(item))) {\n filteredSet.delete(item);\n }\n }\n\n return [...filteredSet];\n }, [filteredOptions, selectedOptions, getOptionValue]);\n\n return {\n ...chipsInputState,\n fieldValue,\n handleInputChange,\n opened,\n setOpened,\n filteredOptions,\n focusedOptionIndex,\n setFocusedOptionIndex,\n focusedOption,\n setFocusedOption,\n selectedOptions,\n };\n};\n"],"file":"useChipsSelect.js"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -15,6 +15,12 @@ Object.defineProperty(exports, "ActionSheet", {
|
|
|
15
15
|
return _ActionSheet.ActionSheet;
|
|
16
16
|
}
|
|
17
17
|
});
|
|
18
|
+
Object.defineProperty(exports, "ActionSheetDefaultIosCloseItem", {
|
|
19
|
+
enumerable: true,
|
|
20
|
+
get: function get() {
|
|
21
|
+
return _ActionSheetDefaultIosCloseItem.ActionSheetDefaultIosCloseItem;
|
|
22
|
+
}
|
|
23
|
+
});
|
|
18
24
|
Object.defineProperty(exports, "ActionSheetItem", {
|
|
19
25
|
enumerable: true,
|
|
20
26
|
get: function get() {
|
|
@@ -954,6 +960,8 @@ var _ActionSheet = require("./components/ActionSheet/ActionSheet");
|
|
|
954
960
|
|
|
955
961
|
var _ActionSheetItem = require("./components/ActionSheetItem/ActionSheetItem");
|
|
956
962
|
|
|
963
|
+
var _ActionSheetDefaultIosCloseItem = require("./components/ActionSheet/ActionSheetDefaultIosCloseItem");
|
|
964
|
+
|
|
957
965
|
var _ScreenSpinner = require("./components/ScreenSpinner/ScreenSpinner");
|
|
958
966
|
|
|
959
967
|
var _Snackbar = require("./components/Snackbar/Snackbar");
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AASA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAKA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAKA;;AAEA;;AAKA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AACA;;AAEA;;AAMA;;AAEA;;AACA;;AAEA;;AAIA;;AAEA;;AACA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AAEA;;AASA;;AACA;;AAKA;;AACA","sourcesContent":["import \"./lib/polyfills\";\n\nimport \"./styles/constants.css\";\nimport \"./styles/animations.css\";\nimport \"./styles/common.css\";\n\n/**\n * Layout\n */\nexport { Root } from \"./components/Root/Root\";\nexport type { RootProps } from \"./components/Root/Root\";\nexport { View } from \"./components/View/View\";\nexport type { ViewProps } from \"./components/View/View\";\nexport { Panel } from \"./components/Panel/Panel\";\nexport type { PanelProps } from \"./components/Panel/Panel\";\nexport { PanelHeaderButton } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport type { PanelHeaderButtonProps } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport { PanelHeader } from \"./components/PanelHeader/PanelHeader\";\nexport type { PanelHeaderProps } from \"./components/PanelHeader/PanelHeader\";\nexport { PanelHeaderContent } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport type { PanelHeaderContentProps } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport { PanelHeaderContext } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport type { PanelHeaderContextProps } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport { SplitLayout } from \"./components/SplitLayout/SplitLayout\";\nexport type { SplitLayoutProps } from \"./components/SplitLayout/SplitLayout\";\nexport { SplitCol } from \"./components/SplitCol/SplitCol\";\nexport type { SplitColProps } from \"./components/SplitCol/SplitCol\";\nexport { Epic } from \"./components/Epic/Epic\";\nexport type { EpicProps } from \"./components/Epic/Epic\";\nexport { Tabbar } from \"./components/Tabbar/Tabbar\";\nexport type { TabbarProps } from \"./components/Tabbar/Tabbar\";\nexport { TabbarItem } from \"./components/TabbarItem/TabbarItem\";\nexport type { TabbarItemProps } from \"./components/TabbarItem/TabbarItem\";\nexport { HorizontalScroll } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport type { HorizontalScrollProps } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport { FixedLayout } from \"./components/FixedLayout/FixedLayout\";\nexport type { FixedLayoutProps } from \"./components/FixedLayout/FixedLayout\";\n\n/**\n * Popouts\n */\nexport { PopoutWrapper } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport type { PopoutWrapperProps } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport { Alert } from \"./components/Alert/Alert\";\nexport type {\n AlertProps,\n AlertActionInterface,\n} from \"./components/Alert/Alert\";\nexport { ActionSheet } from \"./components/ActionSheet/ActionSheet\";\nexport type { ActionSheetProps } from \"./components/ActionSheet/ActionSheet\";\nexport { ActionSheetItem } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport type { ActionSheetItemProps } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport { ScreenSpinner } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport type { ScreenSpinnerProps } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport { Snackbar } from \"./components/Snackbar/Snackbar\";\nexport type { SnackbarProps } from \"./components/Snackbar/Snackbar\";\n\n/**\n * Modals\n */\nexport { ModalRoot } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport type { ModalRootProps } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport { withModalRootContext } from \"./components/ModalRoot/withModalRootContext\";\nexport { ModalRootContext } from \"./components/ModalRoot/ModalRootContext\";\nexport { ModalPage } from \"./components/ModalPage/ModalPage\";\nexport type { ModalPageProps } from \"./components/ModalPage/ModalPage\";\nexport { ModalPageHeader } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport type { ModalPageHeaderProps } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport { ModalCard } from \"./components/ModalCard/ModalCard\";\nexport type { ModalCardProps } from \"./components/ModalCard/ModalCard\";\nexport { ModalDismissButton } from \"./components/ModalDismissButton/ModalDismissButton\";\nexport type { ModalDismissButtonProps } from \"./components/ModalDismissButton/ModalDismissButton\";\n\n/**\n * Blocks\n */\nexport { Badge } from \"./components/Badge/Badge\";\nexport type { BadgeProps } from \"./components/Badge/Badge\";\nexport { ButtonGroup } from \"./components/ButtonGroup/ButtonGroup\";\nexport type { ButtonGroupProps } from \"./components/ButtonGroup/ButtonGroup\";\nexport { Button } from \"./components/Button/Button\";\nexport type { ButtonProps } from \"./components/Button/Button\";\nexport { IconButton } from \"./components/IconButton/IconButton\";\nexport type { IconButtonProps } from \"./components/IconButton/IconButton\";\nexport { Card } from \"./components/Card/Card\";\nexport type { CardProps } from \"./components/Card/Card\";\nexport { CardGrid } from \"./components/CardGrid/CardGrid\";\nexport type { CardGridProps } from \"./components/CardGrid/CardGrid\";\nexport { CardScroll } from \"./components/CardScroll/CardScroll\";\nexport type { CardScrollProps } from \"./components/CardScroll/CardScroll\";\nexport { ContentCard } from \"./components/ContentCard/ContentCard\";\nexport type { ContentCardProps } from \"./components/ContentCard/ContentCard\";\nexport { CellButton } from \"./components/CellButton/CellButton\";\nexport type { CellButtonProps } from \"./components/CellButton/CellButton\";\nexport { Header } from \"./components/Header/Header\";\nexport type { HeaderProps } from \"./components/Header/Header\";\nexport { Group } from \"./components/Group/Group\";\nexport type { GroupProps } from \"./components/Group/Group\";\nexport { Gradient } from \"./components/Gradient/Gradient\";\nexport type { GradientProps } from \"./components/Gradient/Gradient\";\nexport { List } from \"./components/List/List\";\nexport { Cell } from \"./components/Cell/Cell\";\nexport type { CellProps } from \"./components/Cell/Cell\";\nexport { RichCell } from \"./components/RichCell/RichCell\";\nexport type { RichCellProps } from \"./components/RichCell/RichCell\";\nexport { SimpleCell } from \"./components/SimpleCell/SimpleCell\";\nexport type { SimpleCellProps } from \"./components/SimpleCell/SimpleCell\";\nexport { HorizontalCell } from \"./components/HorizontalCell/HorizontalCell\";\nexport type { HorizontalCellProps } from \"./components/HorizontalCell/HorizontalCell\";\nexport { Footer } from \"./components/Footer/Footer\";\nexport type { FooterProps } from \"./components/Footer/Footer\";\nexport { InfoRow } from \"./components/InfoRow/InfoRow\";\nexport type { InfoRowProps } from \"./components/InfoRow/InfoRow\";\nexport { Gallery } from \"./components/Gallery/Gallery\";\nexport type { GalleryProps } from \"./components/Gallery/Gallery\";\nexport { Avatar } from \"./components/Avatar/Avatar\";\nexport type { AvatarProps } from \"./components/Avatar/Avatar\";\nexport { GridAvatar } from \"./components/GridAvatar/GridAvatar\";\nexport type { GridAvatarProps } from \"./components/GridAvatar/GridAvatar\";\nexport { InitialsAvatar } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport type { InitialsAvatarProps } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport { Progress } from \"./components/Progress/Progress\";\nexport type { ProgressProps } from \"./components/Progress/Progress\";\nexport { Search } from \"./components/Search/Search\";\nexport type { SearchProps } from \"./components/Search/Search\";\nexport { Tabs } from \"./components/Tabs/Tabs\";\nexport type { TabsProps } from \"./components/Tabs/Tabs\";\nexport { TabsItem } from \"./components/TabsItem/TabsItem\";\nexport type { TabsItemProps } from \"./components/TabsItem/TabsItem\";\nexport { Spinner } from \"./components/Spinner/Spinner\";\nexport type { SpinnerProps } from \"./components/Spinner/Spinner\";\nexport { PullToRefresh } from \"./components/PullToRefresh/PullToRefresh\";\nexport type { PullToRefreshProps } from \"./components/PullToRefresh/PullToRefresh\";\nexport { Link } from \"./components/Link/Link\";\nexport type { LinkProps } from \"./components/Link/Link\";\nexport { Tooltip } from \"./components/Tooltip/Tooltip\";\nexport type { TooltipProps } from \"./components/Tooltip/Tooltip\";\nexport { TooltipContainer } from \"./components/Tooltip/TooltipContainer\";\nexport { Counter } from \"./components/Counter/Counter\";\nexport type { CounterProps } from \"./components/Counter/Counter\";\nexport { UsersStack } from \"./components/UsersStack/UsersStack\";\nexport type { UsersStackProps } from \"./components/UsersStack/UsersStack\";\nexport { Separator } from \"./components/Separator/Separator\";\nexport type { SeparatorProps } from \"./components/Separator/Separator\";\nexport { Spacing } from \"./components/Spacing/Spacing\";\nexport type { SpacingProps } from \"./components/Spacing/Spacing\";\nexport { Placeholder } from \"./components/Placeholder/Placeholder\";\nexport type { PlaceholderProps } from \"./components/Placeholder/Placeholder\";\nexport { Banner } from \"./components/Banner/Banner\";\nexport type { BannerProps } from \"./components/Banner/Banner\";\nexport { MiniInfoCell } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport type { MiniInfoCellProps } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport { WriteBar } from \"./components/WriteBar/WriteBar\";\nexport type { WriteBarProps } from \"./components/WriteBar/WriteBar\";\nexport { WriteBarIcon } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport type { WriteBarIconProps } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport { SubnavigationBar } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport type { SubnavigationBarProps } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport { SubnavigationButton } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport type { SubnavigationButtonProps } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport { Pagination } from \"./components/Pagination/Pagination\";\nexport type { PaginationProps } from \"./components/Pagination/Pagination\";\n\n/**\n * Forms\n */\nexport { FormLayout } from \"./components/FormLayout/FormLayout\";\nexport type { FormLayoutProps } from \"./components/FormLayout/FormLayout\";\nexport { FormItem } from \"./components/FormItem/FormItem\";\nexport type { FormItemProps } from \"./components/FormItem/FormItem\";\nexport { FormField } from \"./components/FormField/FormField\";\nexport type { FormFieldProps } from \"./components/FormField/FormField\";\nexport { FormLayoutGroup } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport type { FormLayoutGroupProps } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport { FormStatus } from \"./components/FormStatus/FormStatus\";\nexport type { FormStatusProps } from \"./components/FormStatus/FormStatus\";\nexport { Switch } from \"./components/Switch/Switch\";\nexport type { SwitchProps } from \"./components/Switch/Switch\";\nexport { File } from \"./components/File/File\";\nexport type { FileProps } from \"./components/File/File\";\nexport { Input } from \"./components/Input/Input\";\nexport type { InputProps } from \"./components/Input/Input\";\nexport { Chip } from \"./components/Chip/Chip\";\nexport type { ChipProps } from \"./components/Chip/Chip\";\nexport { ChipsInput } from \"./components/ChipsInput/ChipsInput\";\nexport type { ChipsInputProps } from \"./components/ChipsInput/ChipsInput\";\nexport { Slider } from \"./components/Slider/Slider\";\nexport type { SliderProps } from \"./components/Slider/Slider\";\nexport { RangeSlider } from \"./components/RangeSlider/RangeSlider\";\nexport type { RangeSliderProps } from \"./components/RangeSlider/RangeSlider\";\nexport { Textarea } from \"./components/Textarea/Textarea\";\nexport type { TextareaProps } from \"./components/Textarea/Textarea\";\nexport { Radio } from \"./components/Radio/Radio\";\nexport type { RadioProps } from \"./components/Radio/Radio\";\nexport { RadioGroup } from \"./components/RadioGroup/RadioGroup\";\nexport type { RadioGroupProps } from \"./components/RadioGroup/RadioGroup\";\nexport { Checkbox } from \"./components/Checkbox/Checkbox\";\nexport type { CheckboxProps } from \"./components/Checkbox/Checkbox\";\nexport { Select } from \"./components/Select/Select\";\nexport type { SelectProps } from \"./components/Select/Select\";\nexport { SelectMimicry } from \"./components/SelectMimicry/SelectMimicry\";\nexport type { SelectMimicryProps } from \"./components/SelectMimicry/SelectMimicry\";\nexport { NativeSelect } from \"./components/NativeSelect/NativeSelect\";\nexport type { NativeSelectProps } from \"./components/NativeSelect/NativeSelect\";\nexport { CustomSelect } from \"./components/CustomSelect/CustomSelect\";\nexport type {\n CustomSelectProps,\n CustomSelectOptionInterface,\n} from \"./components/CustomSelect/CustomSelect\";\nexport { CustomSelectOption } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport type { CustomSelectOptionProps } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport { DatePicker } from \"./components/DatePicker/DatePicker\";\nexport type {\n DatePickerProps,\n DatePickerDateFormat,\n} from \"./components/DatePicker/DatePicker\";\nexport { SliderSwitch } from \"./components/SliderSwitch/SliderSwitch\";\nexport type {\n SliderSwitchProps,\n SliderSwitchOptionInterface,\n} from \"./components/SliderSwitch/SliderSwitch\";\nexport { SegmentedControl } from \"./components/SegmentedControl/SegmentedControl\";\nexport type {\n SegmentedControlProps,\n SegmentedControlOptionInterface,\n SegmentedControlValue,\n} from \"./components/SegmentedControl/SegmentedControl\";\nexport { Calendar } from \"./components/Calendar/Calendar\";\nexport type { CalendarProps } from \"./components/Calendar/Calendar\";\nexport { CalendarRange } from \"./components/CalendarRange/CalendarRange\";\nexport type { CalendarRangeProps } from \"./components/CalendarRange/CalendarRange\";\nexport { DateInput } from \"./components/DateInput/DateInput\";\nexport type { DateInputProps } from \"./components/DateInput/DateInput\";\nexport { DateRangeInput } from \"./components/DateRangeInput/DateRangeInput\";\nexport type { DateRangeInputProps } from \"./components/DateRangeInput/DateRangeInput\";\n\n/**\n * Helpers\n */\nexport { Div } from \"./components/Div/Div\";\nexport type { DivProps } from \"./components/Div/Div\";\nexport { Tappable } from \"./components/Tappable/Tappable\";\nexport type { TappableProps } from \"./components/Tappable/Tappable\";\nexport { Touch } from \"./components/Touch/Touch\";\nexport type { TouchProps } from \"./components/Touch/Touch\";\nexport { PanelSpinner } from \"./components/PanelSpinner/PanelSpinner\";\nexport type { PanelSpinnerProps } from \"./components/PanelSpinner/PanelSpinner\";\nexport { PanelHeaderClose } from \"./components/PanelHeaderClose/PanelHeaderClose\";\nexport { PanelHeaderBack } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport type { PanelHeaderBackProps } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport { PanelHeaderSubmit } from \"./components/PanelHeaderSubmit/PanelHeaderSubmit\";\nexport { PanelHeaderEdit } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport type { PanelHeaderEditProps } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport { ModalCardBase } from \"./components/ModalCardBase/ModalCardBase\";\nexport type { ModalCardBaseProps } from \"./components/ModalCardBase/ModalCardBase\";\n\n/**\n * Wrappers\n */\nexport { AppRoot } from \"./components/AppRoot/AppRoot\";\nexport type { AppRootProps } from \"./components/AppRoot/AppRoot\";\nexport { AdaptivityProvider } from \"./components/AdaptivityProvider/AdaptivityProvider\";\nexport { ConfigProvider } from \"./components/ConfigProvider/ConfigProvider\";\nexport type { ConfigProviderProps } from \"./components/ConfigProvider/ConfigProvider\";\nexport {\n ConfigProviderContext,\n WebviewType,\n} from \"./components/ConfigProvider/ConfigProviderContext\";\nexport { AppearanceProvider } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport type { AppearanceProviderProps } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport { Scheme, Appearance } from \"./helpers/scheme\";\nexport { LocaleProviderContext } from \"./components/LocaleProviderContext/LocaleProviderContext\";\n\n/**\n * Advertisement\n */\nexport { PromoBanner } from \"./components/PromoBanner/PromoBanner\";\nexport type { PromoBannerProps } from \"./components/PromoBanner/PromoBanner\";\n\n/**\n * Typography\n */\nexport { Title } from \"./components/Typography/Title/Title\";\nexport type { TitleProps } from \"./components/Typography/Title/Title\";\nexport { Headline } from \"./components/Typography/Headline/Headline\";\nexport type { HeadlineProps } from \"./components/Typography/Headline/Headline\";\nexport { Text } from \"./components/Typography/Text/Text\";\nexport type { TextProps } from \"./components/Typography/Text/Text\";\nexport { Paragraph } from \"./components/Typography/Paragraph/Paragraph\";\nexport type { ParagraphProps } from \"./components/Typography/Paragraph/Paragraph\";\nexport { Subhead } from \"./components/Typography/Subhead/Subhead\";\nexport type { SubheadProps } from \"./components/Typography/Subhead/Subhead\";\nexport { Footnote } from \"./components/Typography/Footnote/Footnote\";\nexport type { FootnoteProps } from \"./components/Typography/Footnote/Footnote\";\nexport { Caption } from \"./components/Typography/Caption/Caption\";\nexport type { CaptionProps } from \"./components/Typography/Caption/Caption\";\n\n/**\n * HOCs\n */\nexport { withInsets } from \"./hoc/withInsets\";\nexport { withPlatform } from \"./hoc/withPlatform\";\nexport { withAdaptivity } from \"./hoc/withAdaptivity\";\n\n/**\n * Hooks\n */\nexport { useInsets } from \"./hooks/useInsets\";\nexport { usePlatform } from \"./hooks/usePlatform\";\nexport { useAdaptivity } from \"./hooks/useAdaptivity\";\nexport { useAppearance } from \"./hooks/useAppearance\";\nexport { usePagination } from \"./hooks/usePagination\";\nexport { useScrollLock } from \"./components/AppRoot/ScrollContext\";\nexport { useNavTransition } from \"./components/NavTransitionContext/NavTransitionContext\";\n\n/**\n * Utils\n */\nexport { classNamesString as classNames } from \"./lib/classNames\";\nexport { animate } from \"./lib/animate\";\nexport { removeObjectKeys } from \"./lib/removeObjectKeys\";\nexport { SSRWrapper } from \"./lib/SSR\";\nexport type { SSRWrapperProps } from \"./lib/SSR\";\nexport {\n platform,\n ANDROID,\n IOS,\n VKCOM,\n Platform,\n IS_PLATFORM_ANDROID,\n IS_PLATFORM_IOS,\n} from \"./lib/platform\";\nexport { getClassName } from \"./helpers/getClassName\";\nexport {\n ViewWidth,\n ViewHeight,\n SizeType,\n} from \"./components/AdaptivityProvider/AdaptivityContext\";\nexport { calcInitialsAvatarColor } from \"./helpers/avatar\";\nexport { Popper } from \"./components/Popper/Popper\";\nexport type { PopperProps } from \"./components/Popper/Popper\";\n\n/**\n * Types\n */\nexport type { AlignType, HasPlatform, HasInsets } from \"./types\";\nexport type { NavIdProps } from \"./lib/getNavId\";\nexport type { PlatformType } from \"./lib/platform\";\nexport type { AdaptivityProps } from \"./hoc/withAdaptivity\";\nexport type { TransitionContextProps } from \"./components/NavTransitionContext/NavTransitionContext\";\n"],"file":"index.js"}
|
|
1
|
+
{"version":3,"sources":["../../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;;AASA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAKA;;AAEA;;AAEA;;AACA;;AAEA;;AAMA;;AAEA;;AACA;;AACA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAKA;;AAEA;;AAKA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AACA;;AAEA;;AACA;;AAEA;;AAMA;;AAEA;;AAEA;;AAEA;;AAIA;;AAEA;;AACA;;AAKA;;AAMA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAMA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAKA;;AACA;;AACA;;AACA;;AAEA;;AASA;;AACA;;AAKA;;AACA","sourcesContent":["import \"./lib/polyfills\";\n\nimport \"./styles/constants.css\";\nimport \"./styles/animations.css\";\nimport \"./styles/common.css\";\n\n/**\n * Layout\n */\nexport { Root } from \"./components/Root/Root\";\nexport type { RootProps } from \"./components/Root/Root\";\nexport { View } from \"./components/View/View\";\nexport type { ViewProps } from \"./components/View/View\";\nexport { Panel } from \"./components/Panel/Panel\";\nexport type { PanelProps } from \"./components/Panel/Panel\";\nexport { PanelHeaderButton } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport type { PanelHeaderButtonProps } from \"./components/PanelHeaderButton/PanelHeaderButton\";\nexport { PanelHeader } from \"./components/PanelHeader/PanelHeader\";\nexport type { PanelHeaderProps } from \"./components/PanelHeader/PanelHeader\";\nexport { PanelHeaderContent } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport type { PanelHeaderContentProps } from \"./components/PanelHeaderContent/PanelHeaderContent\";\nexport { PanelHeaderContext } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport type { PanelHeaderContextProps } from \"./components/PanelHeaderContext/PanelHeaderContext\";\nexport { SplitLayout } from \"./components/SplitLayout/SplitLayout\";\nexport type { SplitLayoutProps } from \"./components/SplitLayout/SplitLayout\";\nexport { SplitCol } from \"./components/SplitCol/SplitCol\";\nexport type { SplitColProps } from \"./components/SplitCol/SplitCol\";\nexport { Epic } from \"./components/Epic/Epic\";\nexport type { EpicProps } from \"./components/Epic/Epic\";\nexport { Tabbar } from \"./components/Tabbar/Tabbar\";\nexport type { TabbarProps } from \"./components/Tabbar/Tabbar\";\nexport { TabbarItem } from \"./components/TabbarItem/TabbarItem\";\nexport type { TabbarItemProps } from \"./components/TabbarItem/TabbarItem\";\nexport { HorizontalScroll } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport type { HorizontalScrollProps } from \"./components/HorizontalScroll/HorizontalScroll\";\nexport { FixedLayout } from \"./components/FixedLayout/FixedLayout\";\nexport type { FixedLayoutProps } from \"./components/FixedLayout/FixedLayout\";\n\n/**\n * Popouts\n */\nexport { PopoutWrapper } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport type { PopoutWrapperProps } from \"./components/PopoutWrapper/PopoutWrapper\";\nexport { Alert } from \"./components/Alert/Alert\";\nexport type {\n AlertProps,\n AlertActionInterface,\n} from \"./components/Alert/Alert\";\nexport { ActionSheet } from \"./components/ActionSheet/ActionSheet\";\nexport type { ActionSheetProps } from \"./components/ActionSheet/ActionSheet\";\nexport { ActionSheetItem } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport type { ActionSheetItemProps } from \"./components/ActionSheetItem/ActionSheetItem\";\nexport { ActionSheetDefaultIosCloseItem } from \"./components/ActionSheet/ActionSheetDefaultIosCloseItem\";\nexport { ScreenSpinner } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport type { ScreenSpinnerProps } from \"./components/ScreenSpinner/ScreenSpinner\";\nexport { Snackbar } from \"./components/Snackbar/Snackbar\";\nexport type { SnackbarProps } from \"./components/Snackbar/Snackbar\";\n\n/**\n * Modals\n */\nexport { ModalRoot } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport type { ModalRootProps } from \"./components/ModalRoot/ModalRootAdaptive\";\nexport { withModalRootContext } from \"./components/ModalRoot/withModalRootContext\";\nexport { ModalRootContext } from \"./components/ModalRoot/ModalRootContext\";\nexport { ModalPage } from \"./components/ModalPage/ModalPage\";\nexport type { ModalPageProps } from \"./components/ModalPage/ModalPage\";\nexport { ModalPageHeader } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport type { ModalPageHeaderProps } from \"./components/ModalPageHeader/ModalPageHeader\";\nexport { ModalCard } from \"./components/ModalCard/ModalCard\";\nexport type { ModalCardProps } from \"./components/ModalCard/ModalCard\";\nexport { ModalDismissButton } from \"./components/ModalDismissButton/ModalDismissButton\";\nexport type { ModalDismissButtonProps } from \"./components/ModalDismissButton/ModalDismissButton\";\n\n/**\n * Blocks\n */\nexport { Badge } from \"./components/Badge/Badge\";\nexport type { BadgeProps } from \"./components/Badge/Badge\";\nexport { ButtonGroup } from \"./components/ButtonGroup/ButtonGroup\";\nexport type { ButtonGroupProps } from \"./components/ButtonGroup/ButtonGroup\";\nexport { Button } from \"./components/Button/Button\";\nexport type { ButtonProps } from \"./components/Button/Button\";\nexport { IconButton } from \"./components/IconButton/IconButton\";\nexport type { IconButtonProps } from \"./components/IconButton/IconButton\";\nexport { Card } from \"./components/Card/Card\";\nexport type { CardProps } from \"./components/Card/Card\";\nexport { CardGrid } from \"./components/CardGrid/CardGrid\";\nexport type { CardGridProps } from \"./components/CardGrid/CardGrid\";\nexport { CardScroll } from \"./components/CardScroll/CardScroll\";\nexport type { CardScrollProps } from \"./components/CardScroll/CardScroll\";\nexport { ContentCard } from \"./components/ContentCard/ContentCard\";\nexport type { ContentCardProps } from \"./components/ContentCard/ContentCard\";\nexport { CellButton } from \"./components/CellButton/CellButton\";\nexport type { CellButtonProps } from \"./components/CellButton/CellButton\";\nexport { Header } from \"./components/Header/Header\";\nexport type { HeaderProps } from \"./components/Header/Header\";\nexport { Group } from \"./components/Group/Group\";\nexport type { GroupProps } from \"./components/Group/Group\";\nexport { Gradient } from \"./components/Gradient/Gradient\";\nexport type { GradientProps } from \"./components/Gradient/Gradient\";\nexport { List } from \"./components/List/List\";\nexport type { ListProps } from \"./components/List/List\";\nexport { Cell } from \"./components/Cell/Cell\";\nexport type { CellProps } from \"./components/Cell/Cell\";\nexport { RichCell } from \"./components/RichCell/RichCell\";\nexport type { RichCellProps } from \"./components/RichCell/RichCell\";\nexport { SimpleCell } from \"./components/SimpleCell/SimpleCell\";\nexport type { SimpleCellProps } from \"./components/SimpleCell/SimpleCell\";\nexport { HorizontalCell } from \"./components/HorizontalCell/HorizontalCell\";\nexport type { HorizontalCellProps } from \"./components/HorizontalCell/HorizontalCell\";\nexport { Footer } from \"./components/Footer/Footer\";\nexport type { FooterProps } from \"./components/Footer/Footer\";\nexport { InfoRow } from \"./components/InfoRow/InfoRow\";\nexport type { InfoRowProps } from \"./components/InfoRow/InfoRow\";\nexport { Gallery } from \"./components/Gallery/Gallery\";\nexport type { GalleryProps } from \"./components/Gallery/Gallery\";\nexport { Avatar } from \"./components/Avatar/Avatar\";\nexport type { AvatarProps } from \"./components/Avatar/Avatar\";\nexport { GridAvatar } from \"./components/GridAvatar/GridAvatar\";\nexport type { GridAvatarProps } from \"./components/GridAvatar/GridAvatar\";\nexport { InitialsAvatar } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport type { InitialsAvatarProps } from \"./components/InitialsAvatar/InitialsAvatar\";\nexport { Progress } from \"./components/Progress/Progress\";\nexport type { ProgressProps } from \"./components/Progress/Progress\";\nexport { Search } from \"./components/Search/Search\";\nexport type { SearchProps } from \"./components/Search/Search\";\nexport { Tabs } from \"./components/Tabs/Tabs\";\nexport type { TabsProps } from \"./components/Tabs/Tabs\";\nexport { TabsItem } from \"./components/TabsItem/TabsItem\";\nexport type { TabsItemProps } from \"./components/TabsItem/TabsItem\";\nexport { Spinner } from \"./components/Spinner/Spinner\";\nexport type { SpinnerProps } from \"./components/Spinner/Spinner\";\nexport { PullToRefresh } from \"./components/PullToRefresh/PullToRefresh\";\nexport type { PullToRefreshProps } from \"./components/PullToRefresh/PullToRefresh\";\nexport { Link } from \"./components/Link/Link\";\nexport type { LinkProps } from \"./components/Link/Link\";\nexport { Tooltip } from \"./components/Tooltip/Tooltip\";\nexport type { TooltipProps } from \"./components/Tooltip/Tooltip\";\nexport { TooltipContainer } from \"./components/Tooltip/TooltipContainer\";\nexport { Counter } from \"./components/Counter/Counter\";\nexport type { CounterProps } from \"./components/Counter/Counter\";\nexport { UsersStack } from \"./components/UsersStack/UsersStack\";\nexport type { UsersStackProps } from \"./components/UsersStack/UsersStack\";\nexport { Separator } from \"./components/Separator/Separator\";\nexport type { SeparatorProps } from \"./components/Separator/Separator\";\nexport { Spacing } from \"./components/Spacing/Spacing\";\nexport type { SpacingProps } from \"./components/Spacing/Spacing\";\nexport { Placeholder } from \"./components/Placeholder/Placeholder\";\nexport type { PlaceholderProps } from \"./components/Placeholder/Placeholder\";\nexport { Banner } from \"./components/Banner/Banner\";\nexport type { BannerProps } from \"./components/Banner/Banner\";\nexport { MiniInfoCell } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport type { MiniInfoCellProps } from \"./components/MiniInfoCell/MiniInfoCell\";\nexport { WriteBar } from \"./components/WriteBar/WriteBar\";\nexport type { WriteBarProps } from \"./components/WriteBar/WriteBar\";\nexport { WriteBarIcon } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport type { WriteBarIconProps } from \"./components/WriteBarIcon/WriteBarIcon\";\nexport { SubnavigationBar } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport type { SubnavigationBarProps } from \"./components/SubnavigationBar/SubnavigationBar\";\nexport { SubnavigationButton } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport type { SubnavigationButtonProps } from \"./components/SubnavigationButton/SubnavigationButton\";\nexport { Pagination } from \"./components/Pagination/Pagination\";\nexport type { PaginationProps } from \"./components/Pagination/Pagination\";\n\n/**\n * Forms\n */\nexport { FormLayout } from \"./components/FormLayout/FormLayout\";\nexport type { FormLayoutProps } from \"./components/FormLayout/FormLayout\";\nexport { FormItem } from \"./components/FormItem/FormItem\";\nexport type { FormItemProps } from \"./components/FormItem/FormItem\";\nexport { FormField } from \"./components/FormField/FormField\";\nexport type { FormFieldProps } from \"./components/FormField/FormField\";\nexport { FormLayoutGroup } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport type { FormLayoutGroupProps } from \"./components/FormLayoutGroup/FormLayoutGroup\";\nexport { FormStatus } from \"./components/FormStatus/FormStatus\";\nexport type { FormStatusProps } from \"./components/FormStatus/FormStatus\";\nexport { Switch } from \"./components/Switch/Switch\";\nexport type { SwitchProps } from \"./components/Switch/Switch\";\nexport { File } from \"./components/File/File\";\nexport type { FileProps } from \"./components/File/File\";\nexport { Input } from \"./components/Input/Input\";\nexport type { InputProps } from \"./components/Input/Input\";\nexport { Chip } from \"./components/Chip/Chip\";\nexport type { ChipProps } from \"./components/Chip/Chip\";\nexport { ChipsInput } from \"./components/ChipsInput/ChipsInput\";\nexport type { ChipsInputProps } from \"./components/ChipsInput/ChipsInput\";\nexport { Slider } from \"./components/Slider/Slider\";\nexport type { SliderProps } from \"./components/Slider/Slider\";\nexport { RangeSlider } from \"./components/RangeSlider/RangeSlider\";\nexport type { RangeSliderProps } from \"./components/RangeSlider/RangeSlider\";\nexport { Textarea } from \"./components/Textarea/Textarea\";\nexport type { TextareaProps } from \"./components/Textarea/Textarea\";\nexport { Radio } from \"./components/Radio/Radio\";\nexport type { RadioProps } from \"./components/Radio/Radio\";\nexport { RadioGroup } from \"./components/RadioGroup/RadioGroup\";\nexport type { RadioGroupProps } from \"./components/RadioGroup/RadioGroup\";\nexport { Checkbox } from \"./components/Checkbox/Checkbox\";\nexport type { CheckboxProps } from \"./components/Checkbox/Checkbox\";\nexport { Select } from \"./components/Select/Select\";\nexport type { SelectProps } from \"./components/Select/Select\";\nexport { SelectMimicry } from \"./components/SelectMimicry/SelectMimicry\";\nexport type { SelectMimicryProps } from \"./components/SelectMimicry/SelectMimicry\";\nexport { NativeSelect } from \"./components/NativeSelect/NativeSelect\";\nexport type { NativeSelectProps } from \"./components/NativeSelect/NativeSelect\";\nexport { CustomSelect } from \"./components/CustomSelect/CustomSelect\";\nexport type {\n CustomSelectProps,\n CustomSelectOptionInterface,\n} from \"./components/CustomSelect/CustomSelect\";\nexport { CustomSelectOption } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport type { CustomSelectOptionProps } from \"./components/CustomSelectOption/CustomSelectOption\";\nexport { DatePicker } from \"./components/DatePicker/DatePicker\";\nexport type {\n DatePickerProps,\n DatePickerDateFormat,\n} from \"./components/DatePicker/DatePicker\";\nexport { SliderSwitch } from \"./components/SliderSwitch/SliderSwitch\";\nexport type {\n SliderSwitchProps,\n SliderSwitchOptionInterface,\n} from \"./components/SliderSwitch/SliderSwitch\";\nexport { SegmentedControl } from \"./components/SegmentedControl/SegmentedControl\";\nexport type {\n SegmentedControlProps,\n SegmentedControlOptionInterface,\n SegmentedControlValue,\n} from \"./components/SegmentedControl/SegmentedControl\";\nexport { Calendar } from \"./components/Calendar/Calendar\";\nexport type { CalendarProps } from \"./components/Calendar/Calendar\";\nexport { CalendarRange } from \"./components/CalendarRange/CalendarRange\";\nexport type { CalendarRangeProps } from \"./components/CalendarRange/CalendarRange\";\nexport { DateInput } from \"./components/DateInput/DateInput\";\nexport type { DateInputProps } from \"./components/DateInput/DateInput\";\nexport { DateRangeInput } from \"./components/DateRangeInput/DateRangeInput\";\nexport type { DateRangeInputProps } from \"./components/DateRangeInput/DateRangeInput\";\n\n/**\n * Helpers\n */\nexport { Div } from \"./components/Div/Div\";\nexport type { DivProps } from \"./components/Div/Div\";\nexport { Tappable } from \"./components/Tappable/Tappable\";\nexport type { TappableProps } from \"./components/Tappable/Tappable\";\nexport { Touch } from \"./components/Touch/Touch\";\nexport type { TouchProps } from \"./components/Touch/Touch\";\nexport { PanelSpinner } from \"./components/PanelSpinner/PanelSpinner\";\nexport type { PanelSpinnerProps } from \"./components/PanelSpinner/PanelSpinner\";\nexport { PanelHeaderClose } from \"./components/PanelHeaderClose/PanelHeaderClose\";\nexport { PanelHeaderBack } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport type { PanelHeaderBackProps } from \"./components/PanelHeaderBack/PanelHeaderBack\";\nexport { PanelHeaderSubmit } from \"./components/PanelHeaderSubmit/PanelHeaderSubmit\";\nexport { PanelHeaderEdit } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport type { PanelHeaderEditProps } from \"./components/PanelHeaderEdit/PanelHeaderEdit\";\nexport { ModalCardBase } from \"./components/ModalCardBase/ModalCardBase\";\nexport type { ModalCardBaseProps } from \"./components/ModalCardBase/ModalCardBase\";\n\n/**\n * Wrappers\n */\nexport { AppRoot } from \"./components/AppRoot/AppRoot\";\nexport type { AppRootProps } from \"./components/AppRoot/AppRoot\";\nexport { AdaptivityProvider } from \"./components/AdaptivityProvider/AdaptivityProvider\";\nexport type { AdaptivityProviderProps } from \"./components/AdaptivityProvider/AdaptivityProvider\";\nexport { ConfigProvider } from \"./components/ConfigProvider/ConfigProvider\";\nexport type { ConfigProviderProps } from \"./components/ConfigProvider/ConfigProvider\";\nexport {\n ConfigProviderContext,\n WebviewType,\n} from \"./components/ConfigProvider/ConfigProviderContext\";\nexport { AppearanceProvider } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport type { AppearanceProviderProps } from \"./components/AppearanceProvider/AppearanceProvider\";\nexport { Scheme, Appearance } from \"./helpers/scheme\";\nexport { LocaleProviderContext } from \"./components/LocaleProviderContext/LocaleProviderContext\";\n\n/**\n * Advertisement\n */\nexport { PromoBanner } from \"./components/PromoBanner/PromoBanner\";\nexport type { PromoBannerProps } from \"./components/PromoBanner/PromoBanner\";\n\n/**\n * Typography\n */\nexport { Title } from \"./components/Typography/Title/Title\";\nexport type { TitleProps } from \"./components/Typography/Title/Title\";\nexport { Headline } from \"./components/Typography/Headline/Headline\";\nexport type { HeadlineProps } from \"./components/Typography/Headline/Headline\";\nexport { Text } from \"./components/Typography/Text/Text\";\nexport type { TextProps } from \"./components/Typography/Text/Text\";\nexport { Paragraph } from \"./components/Typography/Paragraph/Paragraph\";\nexport type { ParagraphProps } from \"./components/Typography/Paragraph/Paragraph\";\nexport { Subhead } from \"./components/Typography/Subhead/Subhead\";\nexport type { SubheadProps } from \"./components/Typography/Subhead/Subhead\";\nexport { Footnote } from \"./components/Typography/Footnote/Footnote\";\nexport type { FootnoteProps } from \"./components/Typography/Footnote/Footnote\";\nexport { Caption } from \"./components/Typography/Caption/Caption\";\nexport type { CaptionProps } from \"./components/Typography/Caption/Caption\";\n\n/**\n * HOCs\n */\nexport { withInsets } from \"./hoc/withInsets\";\nexport { withPlatform } from \"./hoc/withPlatform\";\nexport { withAdaptivity } from \"./hoc/withAdaptivity\";\n\n/**\n * Hooks\n */\nexport { useInsets } from \"./hooks/useInsets\";\nexport { usePlatform } from \"./hooks/usePlatform\";\nexport { useAdaptivity } from \"./hooks/useAdaptivity\";\nexport { useAppearance } from \"./hooks/useAppearance\";\nexport { usePagination } from \"./hooks/usePagination\";\nexport { useScrollLock } from \"./components/AppRoot/ScrollContext\";\nexport { useNavTransition } from \"./components/NavTransitionContext/NavTransitionContext\";\n\n/**\n * Utils\n */\nexport { classNamesString as classNames } from \"./lib/classNames\";\nexport { animate } from \"./lib/animate\";\nexport { removeObjectKeys } from \"./lib/removeObjectKeys\";\nexport { SSRWrapper } from \"./lib/SSR\";\nexport type { SSRWrapperProps } from \"./lib/SSR\";\nexport {\n platform,\n ANDROID,\n IOS,\n VKCOM,\n Platform,\n IS_PLATFORM_ANDROID,\n IS_PLATFORM_IOS,\n} from \"./lib/platform\";\nexport { getClassName } from \"./helpers/getClassName\";\nexport {\n ViewWidth,\n ViewHeight,\n SizeType,\n} from \"./components/AdaptivityProvider/AdaptivityContext\";\nexport { calcInitialsAvatarColor } from \"./helpers/avatar\";\nexport { Popper } from \"./components/Popper/Popper\";\nexport type { PopperProps } from \"./components/Popper/Popper\";\n\n/**\n * Types\n */\nexport type { AlignType, HasPlatform, HasInsets } from \"./types\";\nexport type { NavIdProps } from \"./lib/getNavId\";\nexport type { PlatformType } from \"./lib/platform\";\nexport type { AdaptivityProps } from \"./hoc/withAdaptivity\";\nexport type { TransitionContextProps } from \"./components/NavTransitionContext/NavTransitionContext\";\n"],"file":"index.js"}
|
package/dist/cjs/lib/animate.js
CHANGED
|
@@ -5,14 +5,14 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.animate = animate;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _dom = require("./dom");
|
|
9
9
|
|
|
10
10
|
function animate(_ref) {
|
|
11
11
|
var duration = _ref.duration,
|
|
12
12
|
timing = _ref.timing,
|
|
13
13
|
draw = _ref.draw;
|
|
14
14
|
|
|
15
|
-
if (!
|
|
15
|
+
if (!_dom.canUseDOM) {
|
|
16
16
|
return;
|
|
17
17
|
}
|
|
18
18
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/animate.ts"],"names":["animate","duration","timing","draw","canUseDOM","start","performance","now","requestAnimationFrame","time","timeFraction","progress"],"mappings":";;;;;;;AAAA;;AAmBO,SAASA,OAAT,OAI6B;AAAA,MAHlCC,QAGkC,QAHlCA,QAGkC;AAAA,MAFlCC,MAEkC,QAFlCA,MAEkC;AAAA,MADlCC,IACkC,QADlCA,IACkC;;AAClC,MAAI,CAACC,
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/animate.ts"],"names":["animate","duration","timing","draw","canUseDOM","start","performance","now","requestAnimationFrame","time","timeFraction","progress"],"mappings":";;;;;;;AAAA;;AAmBO,SAASA,OAAT,OAI6B;AAAA,MAHlCC,QAGkC,QAHlCA,QAGkC;AAAA,MAFlCC,MAEkC,QAFlCA,MAEkC;AAAA,MADlCC,IACkC,QADlCA,IACkC;;AAClC,MAAI,CAACC,cAAL,EAAgB;AACd;AACD;;AAED,MAAMC,KAAK,GAAGC,WAAW,CAACC,GAAZ,EAAd;AAEAC,EAAAA,qBAAqB,CAAC,SAASR,OAAT,CAAiBS,IAAjB,EAAqC;AACzD,QAAIC,YAAY,GAAG,CAACD,IAAI,GAAGJ,KAAR,IAAiBJ,QAApC;;AAEA,QAAIS,YAAY,GAAG,CAAnB,EAAsB;AACpBA,MAAAA,YAAY,GAAG,CAAf;AACD;;AAED,QAAMC,QAAQ,GAAGT,MAAM,CAACQ,YAAD,CAAvB;AAEAP,IAAAA,IAAI,CAACQ,QAAD,CAAJ;;AAEA,QAAID,YAAY,GAAG,CAAnB,EAAsB;AACpBF,MAAAA,qBAAqB,CAACR,OAAD,CAArB;AACD;AACF,GAdoB,CAArB;AAeD","sourcesContent":["import { canUseDOM } from \"./dom\";\n\n/**\n * Функция для js анимации\n * @param {number} duration\n * @param {function} timing тайминг функция анимации\n * @param {function} draw коллбэк, в который прокидывается прогресс [0, 1]\n * @returns {void}\n */\nexport type TimingInterface = (timeFraction: number) => number;\n\nexport type DrawInterface = (progress: number) => void;\n\nexport interface AnimateArgumentsInterface {\n duration: number;\n timing: TimingInterface;\n draw: DrawInterface;\n}\n\nexport function animate({\n duration,\n timing,\n draw,\n}: AnimateArgumentsInterface): void {\n if (!canUseDOM) {\n return;\n }\n\n const start = performance.now();\n\n requestAnimationFrame(function animate(time: number): void {\n let timeFraction = (time - start) / duration;\n\n if (timeFraction > 1) {\n timeFraction = 1;\n }\n\n const progress = timing(timeFraction);\n\n draw(progress);\n\n if (timeFraction < 1) {\n requestAnimationFrame(animate);\n }\n });\n}\n"],"file":"animate.js"}
|
package/dist/cjs/lib/testing.js
CHANGED
|
@@ -5,9 +5,9 @@ Object.defineProperty(exports, "__esModule", {
|
|
|
5
5
|
});
|
|
6
6
|
exports.isTesting = void 0;
|
|
7
7
|
|
|
8
|
-
var
|
|
8
|
+
var _dom = require("./dom");
|
|
9
9
|
|
|
10
10
|
// eslint-disable-next-line no-restricted-globals
|
|
11
|
-
var isTesting = Boolean(
|
|
11
|
+
var isTesting = Boolean(_dom.canUseDOM && window.__isVkuiTesting);
|
|
12
12
|
exports.isTesting = isTesting;
|
|
13
13
|
//# sourceMappingURL=testing.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/testing.ts"],"names":["isTesting","Boolean","canUseDOM","window","__isVkuiTesting"],"mappings":";;;;;;;AAAA;;AAEA;AACO,IAAMA,SAAS,GAAGC,OAAO,CAACC,
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/testing.ts"],"names":["isTesting","Boolean","canUseDOM","window","__isVkuiTesting"],"mappings":";;;;;;;AAAA;;AAEA;AACO,IAAMA,SAAS,GAAGC,OAAO,CAACC,kBAAcC,MAAD,CAAgBC,eAA9B,CAAzB","sourcesContent":["import { canUseDOM } from \"./dom\";\n\n// eslint-disable-next-line no-restricted-globals\nexport const isTesting = Boolean(canUseDOM && (window as any).__isVkuiTesting);\n"],"file":"testing.js"}
|
package/dist/cjs/lib/touch.js
CHANGED
|
@@ -8,7 +8,7 @@ exports.getSupportedEvents = getSupportedEvents;
|
|
|
8
8
|
exports.rubber = rubber;
|
|
9
9
|
exports.touchEnabled = void 0;
|
|
10
10
|
|
|
11
|
-
var
|
|
11
|
+
var _dom = require("./dom");
|
|
12
12
|
|
|
13
13
|
/*
|
|
14
14
|
* Получает координату по оси абсцисс из touch- или mouse-события
|
|
@@ -39,7 +39,7 @@ var coordY = function coordY(e) {
|
|
|
39
39
|
exports.coordY = coordY;
|
|
40
40
|
|
|
41
41
|
var touchEnabled = function touchEnabled() {
|
|
42
|
-
return
|
|
42
|
+
return _dom.canUseDOM && "ontouchstart" in window;
|
|
43
43
|
};
|
|
44
44
|
/*
|
|
45
45
|
* Возвращает массив поддерживаемых событий
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/lib/touch.ts"],"names":["coordX","e","clientX","changedTouches","coordY","clientY","touchEnabled","canUseDOM","window","getSupportedEvents","rubber","offset","dimension","resistanceRate","isAndroid","offsettedResistance"],"mappings":";;;;;;;;;;AAAA;;AAKA;AACA;AACA;AACA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,CAAD,EAA+B;AAC5C,MAAIA,CAAC,CAACC,OAAF,IAAa,IAAjB,EAAuB;AACrB,WAAOD,CAAC,CAACC,OAAT;AACD;;AACD,SAAOD,CAAC,CAACE,cAAF,IAAoBF,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBD,OAA/C;AACD,CALD;AAOA;AACA;AACA;;;;;AACA,IAAME,MAAM,GAAG,SAATA,MAAS,CAACH,CAAD,EAA+B;AAC5C,MAAIA,CAAC,CAACI,OAAF,IAAa,IAAjB,EAAuB;AACrB,WAAOJ,CAAC,CAACI,OAAT;AACD;;AACD,SAAOJ,CAAC,CAACE,cAAF,IAAoBF,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBE,OAA/C;AACD,CALD,C,CAOA;;;;;AACA,IAAMC,YAAY,GAAG,SAAfA,YAAe;AAAA,SAAMC,
|
|
1
|
+
{"version":3,"sources":["../../../src/lib/touch.ts"],"names":["coordX","e","clientX","changedTouches","coordY","clientY","touchEnabled","canUseDOM","window","getSupportedEvents","rubber","offset","dimension","resistanceRate","isAndroid","offsettedResistance"],"mappings":";;;;;;;;;;AAAA;;AAKA;AACA;AACA;AACA,IAAMA,MAAM,GAAG,SAATA,MAAS,CAACC,CAAD,EAA+B;AAC5C,MAAIA,CAAC,CAACC,OAAF,IAAa,IAAjB,EAAuB;AACrB,WAAOD,CAAC,CAACC,OAAT;AACD;;AACD,SAAOD,CAAC,CAACE,cAAF,IAAoBF,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBD,OAA/C;AACD,CALD;AAOA;AACA;AACA;;;;;AACA,IAAME,MAAM,GAAG,SAATA,MAAS,CAACH,CAAD,EAA+B;AAC5C,MAAIA,CAAC,CAACI,OAAF,IAAa,IAAjB,EAAuB;AACrB,WAAOJ,CAAC,CAACI,OAAT;AACD;;AACD,SAAOJ,CAAC,CAACE,cAAF,IAAoBF,CAAC,CAACE,cAAF,CAAiB,CAAjB,EAAoBE,OAA/C;AACD,CALD,C,CAOA;;;;;AACA,IAAMC,YAAY,GAAG,SAAfA,YAAe;AAAA,SAAMC,kBAAa,kBAAkBC,MAArC;AAAA,CAArB;AAEA;AACA;AACA;AACA;AACA;;;;;AACA,SAASC,kBAAT,GAAwC;AACtC,MAAIH,YAAY,EAAhB,EAAoB;AAClB,WAAO,CAAC,YAAD,EAAe,WAAf,EAA4B,UAA5B,EAAwC,aAAxC,CAAP;AACD;;AAED,SAAO,CAAC,WAAD,EAAc,WAAd,EAA2B,SAA3B,EAAsC,YAAtC,CAAP;AACD;AAED;AACA;AACA;;;AACA,SAASI,MAAT,CACEC,MADF,EAEEC,SAFF,EAGEC,cAHF,EAIEC,SAJF,EAKU;AACR,MAAIA,SAAS,IAAIH,MAAM,GAAG,CAA1B,EAA6B;AAC3B,WAAOA,MAAP;AACD;;AAED,MAAMI,mBAAmB,GAAGJ,MAAM,GAAGE,cAArC;AACA,SAAQE,mBAAmB,GAAGH,SAAvB,IAAqCG,mBAAmB,GAAGH,SAA3D,CAAP;AACD","sourcesContent":["import { canUseDOM } from \"./dom\";\n\nexport interface VKUITouchEvent extends MouseEvent, TouchEvent {}\nexport type VKUITouchEventHander = (e: VKUITouchEvent) => void;\n\n/*\n * Получает координату по оси абсцисс из touch- или mouse-события\n */\nconst coordX = (e: VKUITouchEvent): number => {\n if (e.clientX != null) {\n return e.clientX;\n }\n return e.changedTouches && e.changedTouches[0].clientX;\n};\n\n/*\n * Получает координату по оси ординат из touch- или mouse-события\n */\nconst coordY = (e: VKUITouchEvent): number => {\n if (e.clientY != null) {\n return e.clientY;\n }\n return e.changedTouches && e.changedTouches[0].clientY;\n};\n\n// eslint-disable-next-line no-restricted-globals\nconst touchEnabled = () => canUseDOM && \"ontouchstart\" in window;\n\n/*\n * Возвращает массив поддерживаемых событий\n * Если браузер поддерживает pointer events или подключена handjs, вернет события указателя.\n * Если нет, используем события мыши\n */\nfunction getSupportedEvents(): string[] {\n if (touchEnabled()) {\n return [\"touchstart\", \"touchmove\", \"touchend\", \"touchcancel\"];\n }\n\n return [\"mousedown\", \"mousemove\", \"mouseup\", \"mouseleave\"];\n}\n\n/*\n * Рассчитывает \"сопротивление\" для iOS тач-событий\n */\nfunction rubber(\n offset: number,\n dimension: number,\n resistanceRate: number,\n isAndroid: boolean\n): number {\n if (isAndroid || offset < 0) {\n return offset;\n }\n\n const offsettedResistance = offset * resistanceRate;\n return (offsettedResistance * dimension) / (offsettedResistance + dimension);\n}\n\nexport { getSupportedEvents, coordX, coordY, touchEnabled, rubber };\n"],"file":"touch.js"}
|