@vkontakte/vkui 4.20.0 → 4.22.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.cache/.eslintcache +1 -1
- package/.cache/.stylelintcache +1 -1
- package/.cache/.tsbuildinfo +414 -116
- package/.cache/ts/src/components/Avatar/Avatar.d.ts +2 -0
- package/.cache/ts/src/components/Cell/Cell.d.ts +11 -0
- package/.cache/ts/src/components/Cell/CellCheckbox/CellCheckbox.d.ts +5 -0
- package/.cache/ts/src/components/Cell/CellDragger/CellDragger.d.ts +6 -0
- package/.cache/ts/src/components/Cell/useDraggable.d.ts +13 -0
- package/.cache/ts/src/components/CustomSelect/CustomSelect.d.ts +0 -1
- package/.cache/ts/src/components/DropdownIcon/DropdownIcon.d.ts +3 -0
- package/.cache/ts/src/components/FocusTrap/FocusTrap.d.ts +2 -3
- package/.cache/ts/src/components/FormField/FormField.d.ts +2 -3
- package/.cache/ts/src/components/FormItem/FormItem.d.ts +2 -3
- package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +2 -4
- package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +9 -0
- package/.cache/ts/src/components/HorizontalCell/HorizontalCell.d.ts +2 -3
- package/.cache/ts/src/components/HorizontalScroll/HorizontalScroll.d.ts +3 -2
- package/.cache/ts/src/components/InitialsAvatar/InitialsAvatar.d.ts +33 -0
- package/.cache/ts/src/components/Link/Link.d.ts +1 -2
- package/.cache/ts/src/components/ModalRoot/types.d.ts +0 -1
- package/.cache/ts/src/components/ModalRoot/useModalManager.d.ts +37 -0
- package/.cache/ts/src/components/Removable/Removable.d.ts +2 -1
- package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +2 -2
- package/.cache/ts/src/components/SplitCol/SplitCol.d.ts +3 -3
- package/.cache/ts/src/components/SubnavigationBar/SubnavigationBar.d.ts +2 -1
- package/.cache/ts/src/components/Switch/Switch.d.ts +2 -3
- package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +3 -1
- package/.cache/ts/src/components/Tappable/Tappable.d.ts +2 -3
- package/.cache/ts/src/components/Touch/Touch.d.ts +16 -17
- package/.cache/ts/src/components/Typography/Caption/Caption.d.ts +2 -2
- package/.cache/ts/src/components/Typography/Headline/Headline.d.ts +2 -2
- package/.cache/ts/src/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/.cache/ts/src/components/Typography/Text/Text.d.ts +2 -3
- package/.cache/ts/src/components/Typography/Title/Title.d.ts +2 -2
- package/.cache/ts/src/components/View/utils.d.ts +2 -0
- package/.cache/ts/src/index.d.ts +4 -0
- package/.cache/ts/src/lib/accessibility.d.ts +1 -1
- package/.cache/ts/src/lib/supportEvents.d.ts +3 -1
- package/.cache/ts/src/types.d.ts +3 -0
- package/dist/cjs/components/ActionSheet/ActionSheet.js +7 -9
- package/dist/cjs/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cjs/components/Avatar/Avatar.d.ts +2 -0
- package/dist/cjs/components/Avatar/Avatar.js +7 -3
- package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
- package/dist/cjs/components/Banner/Banner.js.map +1 -1
- package/dist/cjs/components/Button/Button.js.map +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js +1 -1
- package/dist/cjs/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cjs/components/Cell/Cell.d.ts +11 -0
- package/dist/cjs/components/Cell/Cell.js +109 -182
- package/dist/cjs/components/Cell/Cell.js.map +1 -1
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.d.ts +5 -0
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js +50 -0
- package/dist/cjs/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -0
- package/dist/cjs/components/Cell/CellDragger/CellDragger.d.ts +6 -0
- package/dist/cjs/components/Cell/CellDragger/CellDragger.js +53 -0
- package/dist/cjs/components/Cell/CellDragger/CellDragger.js.map +1 -0
- package/dist/cjs/components/Cell/useDraggable.d.ts +13 -0
- package/dist/cjs/components/Cell/useDraggable.js +142 -0
- package/dist/cjs/components/Cell/useDraggable.js.map +1 -0
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js +2 -2
- package/dist/cjs/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cjs/components/Counter/Counter.js.map +1 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.d.ts +0 -1
- package/dist/cjs/components/CustomSelect/CustomSelect.js +2 -3
- package/dist/cjs/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cjs/components/DropdownIcon/DropdownIcon.d.ts +3 -0
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js +37 -0
- package/dist/cjs/components/DropdownIcon/DropdownIcon.js.map +1 -0
- package/dist/cjs/components/FocusTrap/FocusTrap.d.ts +2 -3
- package/dist/cjs/components/FocusTrap/FocusTrap.js +3 -5
- package/dist/cjs/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cjs/components/FormField/FormField.d.ts +2 -3
- package/dist/cjs/components/FormField/FormField.js.map +1 -1
- package/dist/cjs/components/FormItem/FormItem.d.ts +2 -3
- package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
- package/dist/cjs/components/FormLayout/FormLayout.d.ts +2 -4
- package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +1 -0
- package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +9 -0
- package/dist/cjs/components/GridAvatar/GridAvatar.js +61 -0
- package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -0
- package/dist/cjs/components/Header/Header.js.map +1 -1
- package/dist/cjs/components/HorizontalCell/HorizontalCell.d.ts +2 -3
- package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.d.ts +3 -2
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +10 -13
- package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.d.ts +33 -0
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +64 -0
- package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -0
- package/dist/cjs/components/Link/Link.d.ts +1 -2
- package/dist/cjs/components/Link/Link.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRoot.js +170 -373
- package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootContext.js +0 -3
- package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +59 -241
- package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cjs/components/ModalRoot/types.d.ts +0 -1
- package/dist/cjs/components/ModalRoot/types.js.map +1 -1
- package/dist/cjs/components/ModalRoot/useModalManager.d.ts +37 -0
- package/dist/cjs/components/ModalRoot/useModalManager.js +213 -0
- package/dist/cjs/components/ModalRoot/useModalManager.js.map +1 -0
- package/dist/cjs/components/NativeSelect/NativeSelect.js +2 -2
- package/dist/cjs/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cjs/components/Removable/Removable.d.ts +2 -1
- package/dist/cjs/components/Removable/Removable.js +75 -66
- package/dist/cjs/components/Removable/Removable.js.map +1 -1
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js +2 -2
- package/dist/cjs/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +2 -2
- package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cjs/components/SplitCol/SplitCol.d.ts +3 -3
- package/dist/cjs/components/SplitCol/SplitCol.js +2 -4
- package/dist/cjs/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.d.ts +2 -1
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js +38 -11
- package/dist/cjs/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cjs/components/Switch/Switch.d.ts +2 -3
- package/dist/cjs/components/Switch/Switch.js +18 -8
- package/dist/cjs/components/Switch/Switch.js.map +1 -1
- package/dist/cjs/components/Tabbar/Tabbar.js +3 -1
- package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +3 -1
- package/dist/cjs/components/TabbarItem/TabbarItem.js +29 -11
- package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cjs/components/Tappable/Tappable.d.ts +2 -3
- package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
- package/dist/cjs/components/Textarea/Textarea.js +9 -7
- package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
- package/dist/cjs/components/Touch/Touch.d.ts +16 -17
- package/dist/cjs/components/Touch/Touch.js +21 -7
- package/dist/cjs/components/Touch/Touch.js.map +1 -1
- package/dist/cjs/components/Typography/Caption/Caption.d.ts +2 -2
- package/dist/cjs/components/Typography/Caption/Caption.js +4 -2
- package/dist/cjs/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cjs/components/Typography/Headline/Headline.d.ts +2 -2
- package/dist/cjs/components/Typography/Headline/Headline.js +2 -1
- package/dist/cjs/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/dist/cjs/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/cjs/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cjs/components/Typography/Text/Text.d.ts +2 -3
- package/dist/cjs/components/Typography/Text/Text.js +2 -1
- package/dist/cjs/components/Typography/Text/Text.js.map +1 -1
- package/dist/cjs/components/Typography/Title/Title.d.ts +2 -2
- package/dist/cjs/components/Typography/Title/Title.js +9 -4
- package/dist/cjs/components/Typography/Title/Title.js.map +1 -1
- package/dist/cjs/components/View/View.js +68 -75
- package/dist/cjs/components/View/View.js.map +1 -1
- package/dist/cjs/components/View/ViewInfinite.js +78 -85
- package/dist/cjs/components/View/ViewInfinite.js.map +1 -1
- package/dist/cjs/components/View/utils.d.ts +2 -0
- package/dist/cjs/components/View/utils.js +13 -0
- package/dist/cjs/components/View/utils.js.map +1 -0
- package/dist/cjs/index.d.ts +4 -0
- package/dist/cjs/index.js +16 -0
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/accessibility.d.ts +1 -1
- package/dist/cjs/lib/accessibility.js.map +1 -1
- package/dist/cjs/lib/prefixClass.js +7 -6
- package/dist/cjs/lib/prefixClass.js.map +1 -1
- package/dist/cjs/lib/supportEvents.d.ts +3 -1
- package/dist/cjs/lib/supportEvents.js +1 -4
- package/dist/cjs/lib/supportEvents.js.map +1 -1
- package/dist/cjs/types.d.ts +3 -0
- package/dist/components/ActionSheet/ActionSheet.js +6 -9
- package/dist/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/components/Avatar/Avatar.d.ts +2 -0
- package/dist/components/Avatar/Avatar.js +4 -2
- package/dist/components/Avatar/Avatar.js.map +1 -1
- package/dist/components/Banner/Banner.js.map +1 -1
- package/dist/components/Button/Button.js.map +1 -1
- package/dist/components/CardScroll/CardScroll.js +1 -1
- package/dist/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/components/Cell/Cell.d.ts +11 -0
- package/dist/components/Cell/Cell.js +103 -177
- package/dist/components/Cell/Cell.js.map +1 -1
- package/dist/components/Cell/CellCheckbox/CellCheckbox.d.ts +5 -0
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js +31 -0
- package/dist/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -0
- package/dist/components/Cell/CellDragger/CellDragger.d.ts +6 -0
- package/dist/components/Cell/CellDragger/CellDragger.js +30 -0
- package/dist/components/Cell/CellDragger/CellDragger.js.map +1 -0
- package/dist/components/Cell/useDraggable.d.ts +13 -0
- package/dist/components/Cell/useDraggable.js +126 -0
- package/dist/components/Cell/useDraggable.js.map +1 -0
- package/dist/components/ChipsSelect/ChipsSelect.js +2 -2
- package/dist/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/components/Counter/Counter.js.map +1 -1
- package/dist/components/CustomSelect/CustomSelect.d.ts +0 -1
- package/dist/components/CustomSelect/CustomSelect.js +3 -5
- package/dist/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/components/DropdownIcon/DropdownIcon.d.ts +3 -0
- package/dist/components/DropdownIcon/DropdownIcon.js +19 -0
- package/dist/components/DropdownIcon/DropdownIcon.js.map +1 -0
- package/dist/components/FocusTrap/FocusTrap.d.ts +2 -3
- package/dist/components/FocusTrap/FocusTrap.js +3 -5
- package/dist/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/components/FormField/FormField.d.ts +2 -3
- package/dist/components/FormField/FormField.js.map +1 -1
- package/dist/components/FormItem/FormItem.d.ts +2 -3
- package/dist/components/FormItem/FormItem.js.map +1 -1
- package/dist/components/FormLayout/FormLayout.d.ts +2 -4
- package/dist/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js +1 -0
- package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/components/GridAvatar/GridAvatar.d.ts +9 -0
- package/dist/components/GridAvatar/GridAvatar.js +41 -0
- package/dist/components/GridAvatar/GridAvatar.js.map +1 -0
- package/dist/components/Header/Header.js.map +1 -1
- package/dist/components/HorizontalCell/HorizontalCell.d.ts +2 -3
- package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/components/HorizontalScroll/HorizontalScroll.d.ts +3 -2
- package/dist/components/HorizontalScroll/HorizontalScroll.js +10 -12
- package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/components/InitialsAvatar/InitialsAvatar.d.ts +33 -0
- package/dist/components/InitialsAvatar/InitialsAvatar.js +46 -0
- package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -0
- package/dist/components/Link/Link.d.ts +1 -2
- package/dist/components/Link/Link.js.map +1 -1
- package/dist/components/ModalRoot/ModalRoot.js +167 -376
- package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootContext.js +0 -3
- package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/components/ModalRoot/ModalRootDesktop.js +58 -244
- package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/components/ModalRoot/types.d.ts +0 -1
- package/dist/components/ModalRoot/types.js.map +1 -1
- package/dist/components/ModalRoot/useModalManager.d.ts +37 -0
- package/dist/components/ModalRoot/useModalManager.js +189 -0
- package/dist/components/ModalRoot/useModalManager.js.map +1 -0
- package/dist/components/NativeSelect/NativeSelect.js +2 -2
- package/dist/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/components/Removable/Removable.d.ts +2 -1
- package/dist/components/Removable/Removable.js +73 -64
- package/dist/components/Removable/Removable.js.map +1 -1
- package/dist/components/SelectMimicry/SelectMimicry.js +2 -2
- package/dist/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/components/SimpleCell/SimpleCell.d.ts +2 -2
- package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/components/SplitCol/SplitCol.d.ts +3 -3
- package/dist/components/SplitCol/SplitCol.js +2 -4
- package/dist/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.d.ts +2 -1
- package/dist/components/SubnavigationBar/SubnavigationBar.js +38 -11
- package/dist/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/components/Switch/Switch.d.ts +2 -3
- package/dist/components/Switch/Switch.js +15 -8
- package/dist/components/Switch/Switch.js.map +1 -1
- package/dist/components/Tabbar/Tabbar.js +3 -1
- package/dist/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/components/TabbarItem/TabbarItem.d.ts +3 -1
- package/dist/components/TabbarItem/TabbarItem.js +26 -10
- package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/components/Tappable/Tappable.d.ts +2 -3
- package/dist/components/Tappable/Tappable.js.map +1 -1
- package/dist/components/Textarea/Textarea.js +9 -6
- package/dist/components/Textarea/Textarea.js.map +1 -1
- package/dist/components/Touch/Touch.d.ts +16 -17
- package/dist/components/Touch/Touch.js +21 -7
- package/dist/components/Touch/Touch.js.map +1 -1
- package/dist/components/Typography/Caption/Caption.d.ts +2 -2
- package/dist/components/Typography/Caption/Caption.js +4 -2
- package/dist/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/components/Typography/Headline/Headline.d.ts +2 -2
- package/dist/components/Typography/Headline/Headline.js +2 -1
- package/dist/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/components/Typography/Subhead/Subhead.d.ts +2 -2
- package/dist/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/components/Typography/Text/Text.d.ts +2 -3
- package/dist/components/Typography/Text/Text.js +2 -1
- package/dist/components/Typography/Text/Text.js.map +1 -1
- package/dist/components/Typography/Title/Title.d.ts +2 -2
- package/dist/components/Typography/Title/Title.js +9 -4
- package/dist/components/Typography/Title/Title.js.map +1 -1
- package/dist/components/View/View.js +67 -75
- package/dist/components/View/View.js.map +1 -1
- package/dist/components/View/ViewInfinite.js +79 -87
- package/dist/components/View/ViewInfinite.js.map +1 -1
- package/dist/components/View/utils.d.ts +2 -0
- package/dist/components/View/utils.js +6 -0
- package/dist/components/View/utils.js.map +1 -0
- package/dist/components.css +1 -1
- package/dist/components.css.map +1 -1
- package/dist/cssm/components/ActionSheet/ActionSheet.js +6 -9
- package/dist/cssm/components/ActionSheet/ActionSheet.js.map +1 -1
- package/dist/cssm/components/Avatar/Avatar.js +4 -2
- package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
- package/dist/cssm/components/Banner/Banner.js.map +1 -1
- package/dist/cssm/components/Button/Button.css +1 -1
- package/dist/cssm/components/Button/Button.js.map +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js +1 -1
- package/dist/cssm/components/CardScroll/CardScroll.js.map +1 -1
- package/dist/cssm/components/Cell/Cell.css +1 -1
- package/dist/cssm/components/Cell/Cell.js +103 -177
- package/dist/cssm/components/Cell/Cell.js.map +1 -1
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.css +1 -0
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js +32 -0
- package/dist/cssm/components/Cell/CellCheckbox/CellCheckbox.js.map +1 -0
- package/dist/cssm/components/Cell/CellDragger/CellDragger.css +1 -0
- package/dist/cssm/components/Cell/CellDragger/CellDragger.js +31 -0
- package/dist/cssm/components/Cell/CellDragger/CellDragger.js.map +1 -0
- package/dist/cssm/components/Cell/useDraggable.js +126 -0
- package/dist/cssm/components/Cell/useDraggable.js.map +1 -0
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js +2 -2
- package/dist/cssm/components/ChipsSelect/ChipsSelect.js.map +1 -1
- package/dist/cssm/components/Counter/Counter.js.map +1 -1
- package/dist/cssm/components/CustomSelect/CustomSelect.js +3 -5
- package/dist/cssm/components/CustomSelect/CustomSelect.js.map +1 -1
- package/dist/cssm/components/DropdownIcon/DropdownIcon.css +1 -0
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js +20 -0
- package/dist/cssm/components/DropdownIcon/DropdownIcon.js.map +1 -0
- package/dist/cssm/components/FocusTrap/FocusTrap.js +3 -5
- package/dist/cssm/components/FocusTrap/FocusTrap.js.map +1 -1
- package/dist/cssm/components/FocusVisible/FocusVisible.css +1 -1
- package/dist/cssm/components/FormField/FormField.css +1 -1
- package/dist/cssm/components/FormField/FormField.js.map +1 -1
- package/dist/cssm/components/FormItem/FormItem.css +1 -1
- package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
- package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +1 -0
- package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
- package/dist/cssm/components/Gallery/Gallery.css +1 -1
- package/dist/cssm/components/GridAvatar/GridAvatar.css +1 -0
- package/dist/cssm/components/GridAvatar/GridAvatar.js +42 -0
- package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -0
- package/dist/cssm/components/Header/Header.js.map +1 -1
- package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +10 -12
- package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
- package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.css +1 -1
- package/dist/cssm/components/IconButton/IconButton.css +1 -1
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.css +1 -0
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +52 -0
- package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -0
- package/dist/cssm/components/Link/Link.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRoot.js +167 -376
- package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootContext.js +0 -3
- package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +58 -244
- package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
- package/dist/cssm/components/ModalRoot/types.js.map +1 -1
- package/dist/cssm/components/ModalRoot/useModalManager.js +189 -0
- package/dist/cssm/components/ModalRoot/useModalManager.js.map +1 -0
- package/dist/cssm/components/NativeSelect/NativeSelect.js +2 -2
- package/dist/cssm/components/NativeSelect/NativeSelect.js.map +1 -1
- package/dist/cssm/components/Removable/Removable.css +1 -1
- package/dist/cssm/components/Removable/Removable.js +73 -64
- package/dist/cssm/components/Removable/Removable.js.map +1 -1
- package/dist/cssm/components/Search/Search.css +1 -1
- package/dist/cssm/components/Select/Select.css +1 -1
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js +2 -2
- package/dist/cssm/components/SelectMimicry/SelectMimicry.js.map +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
- package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
- package/dist/cssm/components/SplitCol/SplitCol.js +2 -4
- package/dist/cssm/components/SplitCol/SplitCol.js.map +1 -1
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js +38 -11
- package/dist/cssm/components/SubnavigationBar/SubnavigationBar.js.map +1 -1
- package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
- package/dist/cssm/components/Switch/Switch.css +1 -1
- package/dist/cssm/components/Switch/Switch.js +15 -8
- package/dist/cssm/components/Switch/Switch.js.map +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.css +1 -1
- package/dist/cssm/components/Tabbar/Tabbar.js +3 -1
- package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.css +1 -1
- package/dist/cssm/components/TabbarItem/TabbarItem.js +26 -10
- package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
- package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
- package/dist/cssm/components/Textarea/Textarea.js +9 -6
- package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
- package/dist/cssm/components/Touch/Touch.js +21 -7
- package/dist/cssm/components/Touch/Touch.js.map +1 -1
- package/dist/cssm/components/Typography/Caption/Caption.js +4 -2
- package/dist/cssm/components/Typography/Caption/Caption.js.map +1 -1
- package/dist/cssm/components/Typography/Headline/Headline.js +2 -1
- package/dist/cssm/components/Typography/Headline/Headline.js.map +1 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js +2 -1
- package/dist/cssm/components/Typography/Subhead/Subhead.js.map +1 -1
- package/dist/cssm/components/Typography/Text/Text.js +2 -1
- package/dist/cssm/components/Typography/Text/Text.js.map +1 -1
- package/dist/cssm/components/Typography/Title/Title.js +9 -4
- package/dist/cssm/components/Typography/Title/Title.js.map +1 -1
- package/dist/cssm/components/View/View.js +67 -75
- package/dist/cssm/components/View/View.js.map +1 -1
- package/dist/cssm/components/View/ViewInfinite.js +79 -87
- package/dist/cssm/components/View/ViewInfinite.js.map +1 -1
- package/dist/cssm/components/View/utils.js +6 -0
- package/dist/cssm/components/View/utils.js.map +1 -0
- package/dist/cssm/index.js +2 -0
- package/dist/cssm/index.js.map +1 -1
- package/dist/cssm/lib/accessibility.js.map +1 -1
- package/dist/cssm/lib/prefixClass.js +7 -6
- package/dist/cssm/lib/prefixClass.js.map +1 -1
- package/dist/cssm/lib/supportEvents.js +1 -4
- package/dist/cssm/lib/supportEvents.js.map +1 -1
- package/dist/cssm/styles/components.css +1 -1
- package/dist/cssm/styles/themes.css +1 -1
- package/dist/cssm/styles/vkcom_light.css +1 -1
- package/dist/index.d.ts +4 -0
- package/dist/index.js +2 -0
- package/dist/index.js.map +1 -1
- package/dist/lib/accessibility.d.ts +1 -1
- package/dist/lib/accessibility.js.map +1 -1
- package/dist/lib/prefixClass.js +7 -6
- package/dist/lib/prefixClass.js.map +1 -1
- package/dist/lib/supportEvents.d.ts +3 -1
- package/dist/lib/supportEvents.js +1 -4
- package/dist/lib/supportEvents.js.map +1 -1
- package/dist/types.d.ts +3 -0
- package/dist/vkui.css +2 -2
- package/dist/vkui.css.map +1 -1
- package/package.json +8 -4
- package/src/components/ActionSheet/ActionSheet.tsx +4 -5
- package/src/components/ActionSheet/Readme.md +18 -14
- package/src/components/Alert/Readme.md +15 -11
- package/src/components/Avatar/Avatar.tsx +5 -2
- package/src/components/Banner/Banner.tsx +4 -5
- package/src/components/Button/Button.css +26 -53
- package/src/components/Button/Button.tsx +2 -3
- package/src/components/Card/Readme.md +6 -6
- package/src/components/CardScroll/CardScroll.tsx +4 -1
- package/src/components/Cell/Cell.css +21 -58
- package/src/components/Cell/Cell.tsx +101 -162
- package/src/components/Cell/CellCheckbox/CellCheckbox.css +17 -0
- package/src/components/Cell/CellCheckbox/CellCheckbox.tsx +42 -0
- package/src/components/Cell/CellDragger/CellDragger.css +4 -0
- package/src/components/Cell/CellDragger/CellDragger.tsx +40 -0
- package/src/components/Cell/Readme.md +89 -51
- package/src/components/Cell/useDraggable.tsx +112 -0
- package/src/components/ChipsSelect/ChipsSelect.tsx +2 -2
- package/src/components/Counter/Counter.tsx +2 -2
- package/src/components/CustomSelect/CustomSelect.tsx +3 -4
- package/src/components/DropdownIcon/DropdownIcon.css +3 -0
- package/src/components/DropdownIcon/DropdownIcon.tsx +20 -0
- package/src/components/Epic/Readme.md +2 -1
- package/src/components/FocusTrap/FocusTrap.tsx +13 -11
- package/src/components/FocusVisible/FocusVisible.css +12 -4
- package/src/components/FormField/FormField.css +0 -1
- package/src/components/FormField/FormField.tsx +2 -2
- package/src/components/FormItem/FormItem.css +13 -14
- package/src/components/FormItem/FormItem.tsx +2 -3
- package/src/components/FormLayout/FormLayout.tsx +2 -4
- package/src/components/FormLayoutGroup/FormLayoutGroup.css +11 -7
- package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +10 -1
- package/src/components/Gallery/Gallery.css +2 -3
- package/src/components/Gallery/Readme.md +89 -109
- package/src/components/GridAvatar/GridAvatar.css +37 -0
- package/src/components/GridAvatar/GridAvatar.tsx +55 -0
- package/src/components/GridAvatar/Readme.md +12 -0
- package/src/components/Group/Readme.md +18 -14
- package/src/components/Header/Header.tsx +4 -4
- package/src/components/HorizontalCell/HorizontalCell.tsx +3 -3
- package/src/components/HorizontalScroll/HorizontalScroll.tsx +14 -18
- package/src/components/HorizontalScroll/HorizontalScrollArrow.css +2 -2
- package/src/components/IconButton/IconButton.css +7 -0
- package/src/components/InitialsAvatar/InitialsAvatar.css +53 -0
- package/src/components/InitialsAvatar/InitialsAvatar.tsx +90 -0
- package/src/components/InitialsAvatar/Readme.md +14 -0
- package/src/components/Link/Link.tsx +1 -1
- package/src/components/MiniInfoCell/Readme.md +66 -62
- package/src/components/ModalDismissButton/Readme.md +13 -10
- package/src/components/ModalRoot/ModalRoot.tsx +159 -349
- package/src/components/ModalRoot/ModalRootContext.tsx +0 -1
- package/src/components/ModalRoot/ModalRootDesktop.tsx +54 -240
- package/src/components/ModalRoot/Readme.md +35 -27
- package/src/components/ModalRoot/types.ts +0 -1
- package/src/components/ModalRoot/useModalManager.tsx +174 -0
- package/src/components/NativeSelect/NativeSelect.tsx +2 -2
- package/src/components/Removable/Removable.css +16 -63
- package/src/components/Removable/Removable.tsx +84 -64
- package/src/components/ScreenSpinner/Readme.md +13 -9
- package/src/components/Search/Search.css +1 -1
- package/src/components/Select/Select.css +1 -1
- package/src/components/SelectMimicry/SelectMimicry.tsx +2 -2
- package/src/components/SimpleCell/SimpleCell.css +10 -18
- package/src/components/SimpleCell/SimpleCell.tsx +3 -5
- package/src/components/SplitCol/SplitCol.tsx +4 -8
- package/src/components/SplitLayout/Readme.md +2 -2
- package/src/components/SubnavigationBar/Readme.md +90 -86
- package/src/components/SubnavigationBar/SubnavigationBar.tsx +32 -14
- package/src/components/SubnavigationButton/SubnavigationButton.tsx +2 -3
- package/src/components/Switch/Readme.md +6 -6
- package/src/components/Switch/Switch.css +46 -15
- package/src/components/Switch/Switch.tsx +16 -8
- package/src/components/Tabbar/Tabbar.css +15 -4
- package/src/components/Tabbar/Tabbar.tsx +3 -1
- package/src/components/TabbarItem/Readme.md +72 -0
- package/src/components/TabbarItem/TabbarItem.css +65 -14
- package/src/components/TabbarItem/TabbarItem.tsx +46 -22
- package/src/components/Tappable/Tappable.tsx +2 -3
- package/src/components/Textarea/Readme.md +3 -0
- package/src/components/Textarea/Textarea.tsx +10 -6
- package/src/components/Touch/Touch.tsx +38 -25
- package/src/components/Typography/Caption/Caption.tsx +4 -4
- package/src/components/Typography/Headline/Headline.tsx +3 -3
- package/src/components/Typography/Subhead/Subhead.tsx +3 -3
- package/src/components/Typography/Text/Text.tsx +3 -4
- package/src/components/Typography/Title/Title.tsx +9 -5
- package/src/components/View/Readme.md +42 -56
- package/src/components/View/View.tsx +46 -61
- package/src/components/View/ViewInfinite.tsx +52 -67
- package/src/components/View/utils.ts +8 -0
- package/src/index.ts +4 -0
- package/src/lib/accessibility.ts +2 -2
- package/src/lib/prefixClass.ts +9 -6
- package/src/lib/supportEvents.ts +1 -4
- package/src/styles/components.css +4 -0
- package/src/styles/vkcom_light.css +3 -3
- package/src/testing/utils.tsx +34 -1
- package/src/types.ts +4 -0
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { classNames } from '../../lib/classNames';
|
|
3
|
-
import {
|
|
3
|
+
import { DropdownIcon } from '../DropdownIcon/DropdownIcon';
|
|
4
4
|
import { FormField } from '../FormField/FormField';
|
|
5
5
|
import { HasAlign, HasRef, HasRootRef } from '../../types';
|
|
6
6
|
import { withAdaptivity, AdaptivityProps, SizeType } from '../../hoc/withAdaptivity';
|
|
@@ -64,7 +64,7 @@ const NativeSelect: React.FC<NativeSelectProps> = ({
|
|
|
64
64
|
style={style}
|
|
65
65
|
getRootRef={getRootRef}
|
|
66
66
|
disabled={disabled}
|
|
67
|
-
after={
|
|
67
|
+
after={<DropdownIcon />}
|
|
68
68
|
>
|
|
69
69
|
<select
|
|
70
70
|
{...restProps}
|
|
@@ -1,14 +1,8 @@
|
|
|
1
|
-
.Removable {
|
|
2
|
-
position: relative;
|
|
3
|
-
min-width: 0;
|
|
4
|
-
width: 100%;
|
|
5
|
-
max-width: 100%;
|
|
6
|
-
}
|
|
7
|
-
|
|
8
1
|
.Removable__content {
|
|
2
|
+
position: relative;
|
|
9
3
|
display: flex;
|
|
10
|
-
flex-flow: row nowrap;
|
|
11
4
|
align-items: center;
|
|
5
|
+
padding-left: var(--formitem_padding);
|
|
12
6
|
}
|
|
13
7
|
|
|
14
8
|
.Removable__action {
|
|
@@ -22,35 +16,16 @@
|
|
|
22
16
|
align-self: flex-start;
|
|
23
17
|
}
|
|
24
18
|
|
|
25
|
-
.FormItem .
|
|
26
|
-
.FormLayoutGroup .
|
|
27
|
-
padding-left: var(--formitem_padding);
|
|
28
|
-
padding-right: var(--formitem_padding);
|
|
29
|
-
margin-left: calc(-1 * var(--formitem_padding));
|
|
30
|
-
margin-right: calc(-1 * var(--formitem_padding));
|
|
31
|
-
}
|
|
32
|
-
|
|
33
|
-
.FormItem--withTop .Removable__action,
|
|
34
|
-
.FormItem--withTop ~ .Removable__action {
|
|
19
|
+
.FormItem--removable.FormItem--withTop .Removable__action,
|
|
20
|
+
.FormLayoutGroup--removable .FormItem--withTop ~ .Removable__action {
|
|
35
21
|
top: 28px;
|
|
36
22
|
}
|
|
37
23
|
|
|
38
|
-
.FormItem--
|
|
39
|
-
.
|
|
24
|
+
.FormItem--sizeY-compact.FormItem--removable.FormItem--withTop .Removable__action,
|
|
25
|
+
.FormLayoutGroup--sizeY-compact.FormLayoutGroup--removable .FormItem--withTop ~ .Removable__action {
|
|
40
26
|
top: 26px;
|
|
41
27
|
}
|
|
42
28
|
|
|
43
|
-
.Cell .Removable {
|
|
44
|
-
padding-right: 6px;
|
|
45
|
-
box-sizing: border-box;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/* TODO: remove this
|
|
49
|
-
(a very temporary fix to appease screenshot tests) */
|
|
50
|
-
.Cell.Cell--android .Removable.Removable--sizeY-regular {
|
|
51
|
-
padding-right: 4px;
|
|
52
|
-
}
|
|
53
|
-
|
|
54
29
|
/**
|
|
55
30
|
* iOS
|
|
56
31
|
*/
|
|
@@ -81,16 +56,16 @@
|
|
|
81
56
|
}
|
|
82
57
|
|
|
83
58
|
@media (prefers-reduced-motion: no-preference) {
|
|
84
|
-
.Removable--ios .Removable__content
|
|
85
|
-
.Removable__remove {
|
|
59
|
+
.Removable--ios .Removable__content {
|
|
86
60
|
transition: transform .6s var(--ios-easing);
|
|
87
61
|
}
|
|
88
62
|
}
|
|
89
63
|
|
|
90
64
|
.Removable__toggle {
|
|
91
65
|
display: block;
|
|
92
|
-
width:
|
|
93
|
-
height:
|
|
66
|
+
width: 44px;
|
|
67
|
+
height: 44px;
|
|
68
|
+
margin: 0 2px;
|
|
94
69
|
background: none;
|
|
95
70
|
}
|
|
96
71
|
|
|
@@ -122,44 +97,22 @@
|
|
|
122
97
|
background-color: var(--white);
|
|
123
98
|
}
|
|
124
99
|
|
|
125
|
-
.Removable--
|
|
126
|
-
|
|
127
|
-
|
|
100
|
+
.Removable--ios .Removable__content {
|
|
101
|
+
padding-left: 0;
|
|
102
|
+
padding-right: var(--formitem_padding);
|
|
128
103
|
}
|
|
129
104
|
|
|
130
|
-
.FormLayoutGroup
|
|
105
|
+
.FormLayoutGroup--removable .Removable__content {
|
|
131
106
|
flex-wrap: wrap;
|
|
132
107
|
}
|
|
133
108
|
|
|
134
|
-
.FormLayoutGroup .
|
|
109
|
+
.FormLayoutGroup--removable .FormItem--ios.FormItem--withTop ~ .Removable__offset {
|
|
135
110
|
order: -1;
|
|
136
111
|
display: block;
|
|
137
112
|
width: 100%;
|
|
138
113
|
height: 28px;
|
|
139
114
|
}
|
|
140
115
|
|
|
141
|
-
.FormLayoutGroup
|
|
116
|
+
.FormLayoutGroup--removable.FormLayoutGroup--sizeY-compact .FormItem--ios.FormItem--withTop ~ .Removable__offset {
|
|
142
117
|
height: 26px;
|
|
143
118
|
}
|
|
144
|
-
|
|
145
|
-
/**
|
|
146
|
-
* ANDROID & VKCOM
|
|
147
|
-
*/
|
|
148
|
-
.FormItem .Removable--android .Removable__action,
|
|
149
|
-
.FormItem .Removable--vkcom .Removable__action,
|
|
150
|
-
.FormLayoutGroup .Removable--android .Removable__action,
|
|
151
|
-
.FormLayoutGroup .Removable--vkcom .Removable__action {
|
|
152
|
-
margin-top: -2px;
|
|
153
|
-
margin-right: -16px;
|
|
154
|
-
margin-bottom: -2px;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
.FormItem--sizeY-compact .Removable--android .Removable__action,
|
|
158
|
-
.FormItem--sizeY-compact .Removable--vkcom .Removable__action,
|
|
159
|
-
.FormLayoutGroup--sizeY-compact .Removable--android .Removable__action,
|
|
160
|
-
.FormLayoutGroup--sizeY-compact .Removable--vkcom .Removable__action {
|
|
161
|
-
margin-left: 2px;
|
|
162
|
-
margin-top: -4px;
|
|
163
|
-
margin-right: -14px;
|
|
164
|
-
margin-bottom: -4px;
|
|
165
|
-
}
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { HasRootRef } from '../../types';
|
|
2
3
|
import { classNames } from '../../lib/classNames';
|
|
3
|
-
import { getTitleFromChildren } from '../../lib/utils';
|
|
4
|
+
import { getTitleFromChildren, noop } from '../../lib/utils';
|
|
5
|
+
import { useExternRef } from '../../hooks/useExternRef';
|
|
4
6
|
import { usePlatform } from '../../hooks/usePlatform';
|
|
5
7
|
import { getClassName } from '../../helpers/getClassName';
|
|
6
8
|
import { useAdaptivity } from '../../hooks/useAdaptivity';
|
|
@@ -23,65 +25,104 @@ export interface RemovableProps {
|
|
|
23
25
|
onRemove?: (e: React.MouseEvent, rootEl?: HTMLElement) => void;
|
|
24
26
|
}
|
|
25
27
|
|
|
26
|
-
interface
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
*/
|
|
30
|
-
align?: 'start' | 'center';
|
|
28
|
+
interface RemovableIosOwnProps extends Pick<RemovableProps, 'removePlaceholder'> {
|
|
29
|
+
onRemoveClick?: (e: React.MouseEvent, rootEl?: HTMLElement) => void;
|
|
30
|
+
removePlaceholderString?: string;
|
|
31
31
|
}
|
|
32
32
|
|
|
33
|
-
|
|
33
|
+
const RemovableIos: React.FC<RemovableIosOwnProps> = ({
|
|
34
|
+
onRemoveClick,
|
|
35
|
+
removePlaceholder,
|
|
36
|
+
removePlaceholderString,
|
|
34
37
|
children,
|
|
35
|
-
|
|
36
|
-
removePlaceholder = 'Удалить',
|
|
37
|
-
align = 'center',
|
|
38
|
-
...restProps
|
|
39
|
-
}: RemovableOwnProps) => {
|
|
40
|
-
const platform = usePlatform();
|
|
41
|
-
const { sizeY } = useAdaptivity();
|
|
38
|
+
}) => {
|
|
42
39
|
const { document } = useDOM();
|
|
43
40
|
|
|
44
41
|
const removeButtonRef = React.useRef(null);
|
|
45
|
-
|
|
46
|
-
const [isRemoveActivated, setRemoveActivated] = React.useState(false);
|
|
47
42
|
const [removeOffset, updateRemoveOffset] = React.useState(0);
|
|
48
43
|
|
|
49
|
-
useGlobalEventListener(document, 'click',
|
|
50
|
-
setRemoveActivated(false);
|
|
44
|
+
useGlobalEventListener(document, 'click', removeOffset > 0 && (() => {
|
|
51
45
|
updateRemoveOffset(0);
|
|
52
46
|
}));
|
|
53
47
|
|
|
54
48
|
const onRemoveTransitionEnd = () => {
|
|
55
|
-
if (
|
|
49
|
+
if (removeOffset > 0) {
|
|
56
50
|
removeButtonRef?.current?.focus();
|
|
57
51
|
}
|
|
58
52
|
};
|
|
59
53
|
|
|
60
|
-
const onRemoveActivateClick = (
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
setRemoveActivated(true);
|
|
54
|
+
const onRemoveActivateClick = () => {
|
|
55
|
+
const { offsetWidth = 0 } = removeButtonRef?.current;
|
|
56
|
+
updateRemoveOffset(offsetWidth);
|
|
64
57
|
};
|
|
65
58
|
|
|
59
|
+
return (
|
|
60
|
+
<div
|
|
61
|
+
vkuiClass="Removable__content"
|
|
62
|
+
style={{ transform: `translateX(-${removeOffset ?? 0}px)` }}
|
|
63
|
+
onTransitionEnd={onRemoveTransitionEnd}
|
|
64
|
+
>
|
|
65
|
+
<IconButton
|
|
66
|
+
hasActive={false}
|
|
67
|
+
hasHover={false}
|
|
68
|
+
aria-label={removePlaceholderString}
|
|
69
|
+
vkuiClass="Removable__action Removable__toggle"
|
|
70
|
+
onClick={onRemoveActivateClick}
|
|
71
|
+
disabled={removeOffset > 0}
|
|
72
|
+
>
|
|
73
|
+
<i vkuiClass="Removable__toggle-in" role="presentation" />
|
|
74
|
+
</IconButton>
|
|
75
|
+
{children}
|
|
76
|
+
|
|
77
|
+
<span vkuiClass="Removable__offset" aria-hidden="true"></span>
|
|
78
|
+
|
|
79
|
+
<Tappable
|
|
80
|
+
Component="button"
|
|
81
|
+
hasActive={false}
|
|
82
|
+
hasHover={false}
|
|
83
|
+
disabled={removeOffset === 0}
|
|
84
|
+
getRootRef={removeButtonRef}
|
|
85
|
+
vkuiClass="Removable__remove"
|
|
86
|
+
onClick={onRemoveClick}
|
|
87
|
+
onTransitionEnd={onRemoveTransitionEnd}
|
|
88
|
+
>
|
|
89
|
+
<span vkuiClass="Removable__remove-in">{removePlaceholder}</span>
|
|
90
|
+
</Tappable>
|
|
91
|
+
</div>
|
|
92
|
+
);
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
interface RemovableOwnProps extends React.AllHTMLAttributes<HTMLElement>, RemovableProps, HasRootRef<HTMLDivElement> {
|
|
96
|
+
/**
|
|
97
|
+
* Расположение кнопки удаления.
|
|
98
|
+
*/
|
|
99
|
+
align?: 'start' | 'center';
|
|
100
|
+
}
|
|
101
|
+
|
|
102
|
+
export const Removable: React.FC<RemovableOwnProps> = ({
|
|
103
|
+
getRootRef,
|
|
104
|
+
children,
|
|
105
|
+
onRemove = noop,
|
|
106
|
+
removePlaceholder = 'Удалить',
|
|
107
|
+
align = 'center',
|
|
108
|
+
...restProps
|
|
109
|
+
}: RemovableOwnProps) => {
|
|
110
|
+
const platform = usePlatform();
|
|
111
|
+
const { sizeY } = useAdaptivity();
|
|
112
|
+
|
|
113
|
+
const ref = useExternRef(getRootRef);
|
|
114
|
+
|
|
66
115
|
const onRemoveClick = (e: React.MouseEvent) => {
|
|
67
|
-
e.nativeEvent.stopImmediatePropagation();
|
|
68
116
|
e.preventDefault();
|
|
69
|
-
onRemove
|
|
117
|
+
onRemove(e);
|
|
70
118
|
};
|
|
71
119
|
|
|
72
|
-
React.useEffect(() => {
|
|
73
|
-
const removeButton = removeButtonRef?.current;
|
|
74
|
-
|
|
75
|
-
if (isRemoveActivated && removeButton) {
|
|
76
|
-
updateRemoveOffset(removeButton.offsetWidth);
|
|
77
|
-
}
|
|
78
|
-
}, [isRemoveActivated]);
|
|
79
|
-
|
|
80
120
|
const removePlaceholderString: string = getTitleFromChildren(removePlaceholder);
|
|
81
121
|
|
|
82
122
|
return (
|
|
83
123
|
<div
|
|
84
124
|
{...restProps}
|
|
125
|
+
ref={ref}
|
|
85
126
|
vkuiClass={classNames(
|
|
86
127
|
getClassName('Removable', platform),
|
|
87
128
|
`Removable--${align}`,
|
|
@@ -93,9 +134,11 @@ export const Removable: React.FC<RemovableOwnProps> = ({
|
|
|
93
134
|
{children}
|
|
94
135
|
|
|
95
136
|
<IconButton
|
|
96
|
-
|
|
137
|
+
activeMode="opacity"
|
|
138
|
+
hoverMode="opacity"
|
|
97
139
|
vkuiClass="Removable__action"
|
|
98
140
|
onClick={onRemoveClick}
|
|
141
|
+
aria-label={removePlaceholderString}
|
|
99
142
|
>
|
|
100
143
|
<Icon24Cancel role="presentation" />
|
|
101
144
|
</IconButton>
|
|
@@ -103,36 +146,13 @@ export const Removable: React.FC<RemovableOwnProps> = ({
|
|
|
103
146
|
)}
|
|
104
147
|
|
|
105
148
|
{platform === IOS && (
|
|
106
|
-
<
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
onClick={onRemoveActivateClick}
|
|
114
|
-
>
|
|
115
|
-
<i vkuiClass="Removable__toggle-in" role="presentation" />
|
|
116
|
-
</IconButton>
|
|
117
|
-
{children}
|
|
118
|
-
|
|
119
|
-
<span vkuiClass="Removable__offset" aria-hidden="true"></span>
|
|
120
|
-
</div>
|
|
121
|
-
|
|
122
|
-
<Tappable
|
|
123
|
-
Component="button"
|
|
124
|
-
hasActive={false}
|
|
125
|
-
hasHover={false}
|
|
126
|
-
disabled={!isRemoveActivated}
|
|
127
|
-
getRootRef={removeButtonRef}
|
|
128
|
-
vkuiClass="Removable__remove"
|
|
129
|
-
onClick={onRemoveClick}
|
|
130
|
-
onTransitionEnd={onRemoveTransitionEnd}
|
|
131
|
-
style={{ transform: `translateX(-${removeOffset}px)` }}
|
|
132
|
-
>
|
|
133
|
-
<span vkuiClass="Removable__remove-in">{removePlaceholder}</span>
|
|
134
|
-
</Tappable>
|
|
135
|
-
</React.Fragment>
|
|
149
|
+
<RemovableIos
|
|
150
|
+
onRemoveClick={onRemoveClick}
|
|
151
|
+
removePlaceholder={removePlaceholder}
|
|
152
|
+
removePlaceholderString={removePlaceholderString}
|
|
153
|
+
>
|
|
154
|
+
{children}
|
|
155
|
+
</RemovableIos>
|
|
136
156
|
)}
|
|
137
157
|
</div>
|
|
138
158
|
);
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
Рекомендуется использовать в случаях, когда требуется заблокировать интерфейс до завершения асинхронного процесса.
|
|
6
6
|
|
|
7
|
-
```jsx
|
|
7
|
+
```jsx { "props": { "layout": false, "adaptivity": true } }
|
|
8
8
|
class Example extends React.Component {
|
|
9
9
|
|
|
10
10
|
constructor (props) {
|
|
@@ -21,14 +21,18 @@ class Example extends React.Component {
|
|
|
21
21
|
|
|
22
22
|
render () {
|
|
23
23
|
return (
|
|
24
|
-
<
|
|
25
|
-
<
|
|
26
|
-
|
|
27
|
-
<
|
|
28
|
-
<
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
24
|
+
<SplitLayout popout={this.state.popout}>
|
|
25
|
+
<SplitCol>
|
|
26
|
+
<View activePanel="spinner">
|
|
27
|
+
<Panel id="spinner">
|
|
28
|
+
<PanelHeader>ScreenSpinner</PanelHeader>
|
|
29
|
+
<Group>
|
|
30
|
+
<CellButton onClick={this.onClick.bind(this)}>Запустить долгий процесс</CellButton>
|
|
31
|
+
</Group>
|
|
32
|
+
</Panel>
|
|
33
|
+
</View>
|
|
34
|
+
</SplitCol>
|
|
35
|
+
</SplitLayout>
|
|
32
36
|
)
|
|
33
37
|
}
|
|
34
38
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
2
|
import { classNames } from '../../lib/classNames';
|
|
3
|
-
import {
|
|
3
|
+
import { DropdownIcon } from '../DropdownIcon/DropdownIcon';
|
|
4
4
|
import { FormField } from '../FormField/FormField';
|
|
5
5
|
import { HasAlign, HasRootRef } from '../../types';
|
|
6
6
|
import { withAdaptivity, AdaptivityProps, SizeType } from '../../hoc/withAdaptivity';
|
|
@@ -51,7 +51,7 @@ const SelectMimicry: React.FunctionComponent<SelectMimicryProps> = ({
|
|
|
51
51
|
getRootRef={getRootRef}
|
|
52
52
|
onClick={disabled ? null : onClick}
|
|
53
53
|
disabled={disabled}
|
|
54
|
-
after={
|
|
54
|
+
after={<DropdownIcon />}
|
|
55
55
|
>
|
|
56
56
|
<TypographyComponent Component="div" weight="regular" vkuiClass="Select__container">
|
|
57
57
|
<span vkuiClass="Select__title">{children || placeholder}</span>
|
|
@@ -5,12 +5,8 @@
|
|
|
5
5
|
white-space: nowrap;
|
|
6
6
|
text-decoration: none;
|
|
7
7
|
color: var(--text_primary);
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
.FormItem .SimpleCell {
|
|
11
|
-
width: 100%;
|
|
12
|
-
box-sizing: content-box;
|
|
13
|
-
margin: 0 calc(-1 * var(--formitem_padding));
|
|
8
|
+
padding-left: 16px;
|
|
9
|
+
padding-right: 16px;
|
|
14
10
|
}
|
|
15
11
|
|
|
16
12
|
.SimpleCell--mult {
|
|
@@ -26,7 +22,6 @@
|
|
|
26
22
|
max-width: 100%;
|
|
27
23
|
flex-grow: 1;
|
|
28
24
|
min-width: 0;
|
|
29
|
-
flex-shrink: initial;
|
|
30
25
|
overflow: hidden;
|
|
31
26
|
}
|
|
32
27
|
|
|
@@ -57,7 +52,6 @@
|
|
|
57
52
|
|
|
58
53
|
.SimpleCell:not(.SimpleCell--mult) .SimpleCell__content {
|
|
59
54
|
display: flex;
|
|
60
|
-
flex-flow: row nowrap;
|
|
61
55
|
align-content: flex-start;
|
|
62
56
|
align-items: center;
|
|
63
57
|
justify-content: flex-start;
|
|
@@ -120,10 +114,6 @@
|
|
|
120
114
|
padding-right: 2px;
|
|
121
115
|
}
|
|
122
116
|
|
|
123
|
-
.SimpleCell .Switch {
|
|
124
|
-
padding-left: 10px;
|
|
125
|
-
}
|
|
126
|
-
|
|
127
117
|
.SimpleCell__after .IconButton .Icon--28,
|
|
128
118
|
.SimpleCell__after .IconButton .Icon--28 ~ * {
|
|
129
119
|
margin-right: -8px;
|
|
@@ -189,12 +179,6 @@
|
|
|
189
179
|
* Android & VKCOM
|
|
190
180
|
*/
|
|
191
181
|
|
|
192
|
-
.SimpleCell--android,
|
|
193
|
-
.SimpleCell--vkcom {
|
|
194
|
-
padding-left: 16px;
|
|
195
|
-
padding-right: 16px;
|
|
196
|
-
}
|
|
197
|
-
|
|
198
182
|
.SimpleCell--android .SimpleCell__main,
|
|
199
183
|
.SimpleCell--android .SimpleCell__indicator,
|
|
200
184
|
.SimpleCell--vkcom .SimpleCell__main,
|
|
@@ -246,3 +230,11 @@
|
|
|
246
230
|
.SimpleCell--sizeY-compact .SimpleCell__badge .Badge {
|
|
247
231
|
transform: translateY(.5px);
|
|
248
232
|
}
|
|
233
|
+
|
|
234
|
+
/**
|
|
235
|
+
* CMP:
|
|
236
|
+
* FormItem
|
|
237
|
+
*/
|
|
238
|
+
.FormItem > .SimpleCell {
|
|
239
|
+
margin: 0 calc(-1 * var(--formitem_padding));
|
|
240
|
+
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import * as React from 'react';
|
|
2
|
+
import { HasComponent } from '../../types';
|
|
2
3
|
import { classNames } from '../../lib/classNames';
|
|
3
4
|
import { getClassName } from '../../helpers/getClassName';
|
|
4
5
|
import Tappable, { TappableProps } from '../Tappable/Tappable';
|
|
@@ -13,7 +14,7 @@ import Text from '../Typography/Text/Text';
|
|
|
13
14
|
import Subhead from '../Typography/Subhead/Subhead';
|
|
14
15
|
import './SimpleCell.css';
|
|
15
16
|
|
|
16
|
-
export interface SimpleCellOwnProps {
|
|
17
|
+
export interface SimpleCellOwnProps extends HasComponent {
|
|
17
18
|
/**
|
|
18
19
|
* Иконка 28 или `<Avatar size={28|32|40|48|72} />`
|
|
19
20
|
*/
|
|
@@ -43,14 +44,11 @@ export interface SimpleCellOwnProps {
|
|
|
43
44
|
*/
|
|
44
45
|
expandable?: boolean;
|
|
45
46
|
multiline?: boolean;
|
|
46
|
-
Component?: React.ElementType;
|
|
47
47
|
}
|
|
48
48
|
|
|
49
49
|
export interface SimpleCellProps extends SimpleCellOwnProps, TappableProps {}
|
|
50
50
|
|
|
51
|
-
|
|
52
|
-
Component?: React.ElementType;
|
|
53
|
-
}
|
|
51
|
+
type SimpleCellTypographyProps = React.HTMLAttributes<HTMLDivElement> & HasComponent;
|
|
54
52
|
|
|
55
53
|
const SimpleCellTypography: React.FC<SimpleCellTypographyProps> = (props: SimpleCellTypographyProps) => {
|
|
56
54
|
const { sizeY } = useAdaptivity();
|
|
@@ -13,9 +13,9 @@ export const SplitColContext = React.createContext<SplitColContextProps>({
|
|
|
13
13
|
});
|
|
14
14
|
|
|
15
15
|
export interface SplitColProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
16
|
-
width?: string;
|
|
17
|
-
maxWidth?: string;
|
|
18
|
-
minWidth?: string;
|
|
16
|
+
width?: number | string;
|
|
17
|
+
maxWidth?: number | string;
|
|
18
|
+
minWidth?: number | string;
|
|
19
19
|
/**
|
|
20
20
|
* Если false, то переходы между Panel происходят без анимации
|
|
21
21
|
*/
|
|
@@ -28,7 +28,7 @@ export interface SplitColProps extends React.HTMLAttributes<HTMLDivElement> {
|
|
|
28
28
|
}
|
|
29
29
|
|
|
30
30
|
export const SplitCol: React.FC<SplitColProps> = (props: SplitColProps) => {
|
|
31
|
-
const { children, width, maxWidth, minWidth, spaced, animate, fixed, style, ...restProps } = props;
|
|
31
|
+
const { children, width, maxWidth, minWidth, spaced, animate = false, fixed, style, ...restProps } = props;
|
|
32
32
|
const baseRef = React.useRef<HTMLDivElement>();
|
|
33
33
|
|
|
34
34
|
const contextValue = React.useMemo(() => {
|
|
@@ -59,7 +59,3 @@ export const SplitCol: React.FC<SplitColProps> = (props: SplitColProps) => {
|
|
|
59
59
|
</div>
|
|
60
60
|
);
|
|
61
61
|
};
|
|
62
|
-
|
|
63
|
-
SplitCol.defaultProps = {
|
|
64
|
-
animate: false,
|
|
65
|
-
};
|
|
@@ -46,7 +46,7 @@ const Example = withAdaptivity(
|
|
|
46
46
|
modal={modalRoot}
|
|
47
47
|
>
|
|
48
48
|
{isDesktop && (
|
|
49
|
-
<SplitCol fixed width=
|
|
49
|
+
<SplitCol fixed width={280} maxWidth={280}>
|
|
50
50
|
<Panel>
|
|
51
51
|
{hasHeader && <PanelHeader />}
|
|
52
52
|
<Group>
|
|
@@ -137,4 +137,4 @@ const Example = withAdaptivity(
|
|
|
137
137
|
|
|
138
138
|
<Example />
|
|
139
139
|
|
|
140
|
-
```
|
|
140
|
+
```
|