@vkontakte/vkui 4.32.0 → 4.33.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.
Files changed (890) hide show
  1. package/.cache/.eslintcache +1 -1
  2. package/.cache/.stylelintcache +1 -1
  3. package/.cache/.tsbuildinfo +358 -277
  4. package/.cache/ts/src/components/Avatar/Avatar.d.ts +1 -2
  5. package/.cache/ts/src/components/Banner/Banner.d.ts +1 -2
  6. package/.cache/ts/src/components/BaseGallery/BaseGallery.d.ts +4 -0
  7. package/.cache/ts/src/components/BaseGallery/helpers.d.ts +12 -0
  8. package/.cache/ts/src/components/BaseGallery/types.d.ts +43 -0
  9. package/.cache/ts/src/components/CellButton/CellButton.d.ts +1 -2
  10. package/.cache/ts/src/components/Checkbox/Checkbox.d.ts +3 -1
  11. package/.cache/ts/src/components/ConfigProvider/ConfigProvider.d.ts +1 -2
  12. package/.cache/ts/src/components/ContentCard/ContentCard.d.ts +1 -2
  13. package/.cache/ts/src/components/DatePicker/DatePicker.d.ts +1 -2
  14. package/.cache/ts/src/components/Epic/Epic.d.ts +1 -3
  15. package/.cache/ts/src/components/FixedLayout/FixedLayout.d.ts +1 -2
  16. package/.cache/ts/src/components/FocusVisible/FocusVisible.d.ts +3 -4
  17. package/.cache/ts/src/components/FormLayout/FormLayout.d.ts +1 -2
  18. package/.cache/ts/src/components/FormLayoutGroup/FormLayoutGroup.d.ts +1 -2
  19. package/.cache/ts/src/components/Gallery/Gallery.d.ts +6 -43
  20. package/.cache/ts/src/components/GridAvatar/GridAvatar.d.ts +4 -1
  21. package/.cache/ts/src/components/Group/Group.d.ts +4 -2
  22. package/.cache/ts/src/components/Header/Header.d.ts +1 -2
  23. package/.cache/ts/src/components/IconButton/IconButton.d.ts +5 -2
  24. package/.cache/ts/src/components/InitialsAvatar/InitialsAvatar.d.ts +1 -1
  25. package/.cache/ts/src/components/Link/Link.d.ts +1 -2
  26. package/.cache/ts/src/components/List/List.d.ts +1 -2
  27. package/.cache/ts/src/components/ModalCard/ModalCard.d.ts +4 -2
  28. package/.cache/ts/src/components/ModalDismissButton/ModalDismissButton.d.ts +1 -2
  29. package/.cache/ts/src/components/ModalPage/ModalPage.d.ts +4 -2
  30. package/.cache/ts/src/components/ModalRoot/ModalRootContext.d.ts +1 -1
  31. package/.cache/ts/src/components/PanelHeaderBack/PanelHeaderBack.d.ts +5 -2
  32. package/.cache/ts/src/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -2
  33. package/.cache/ts/src/components/PanelHeaderContent/PanelHeaderContent.d.ts +1 -2
  34. package/.cache/ts/src/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -2
  35. package/.cache/ts/src/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -2
  36. package/.cache/ts/src/components/Placeholder/Placeholder.d.ts +1 -2
  37. package/.cache/ts/src/components/PromoBanner/PromoBanner.d.ts +2 -2
  38. package/.cache/ts/src/components/RangeSlider/RangeSlider.d.ts +1 -2
  39. package/.cache/ts/src/components/RichCell/RichCell.d.ts +4 -2
  40. package/.cache/ts/src/components/Root/Root.d.ts +1 -2
  41. package/.cache/ts/src/components/ScreenSpinner/ScreenSpinner.d.ts +1 -2
  42. package/.cache/ts/src/components/Search/Search.d.ts +1 -2
  43. package/.cache/ts/src/components/SimpleCell/SimpleCell.d.ts +4 -2
  44. package/.cache/ts/src/components/SimpleCheckbox/SimpleCheckbox.d.ts +1 -0
  45. package/.cache/ts/src/components/Slider/Slider.d.ts +1 -2
  46. package/.cache/ts/src/components/Spacing/Spacing.d.ts +2 -1
  47. package/.cache/ts/src/components/Tabbar/Tabbar.d.ts +1 -2
  48. package/.cache/ts/src/components/TabbarItem/TabbarItem.d.ts +1 -2
  49. package/.cache/ts/src/components/Tabs/Tabs.d.ts +4 -2
  50. package/.cache/ts/src/components/TabsItem/TabsItem.d.ts +1 -2
  51. package/.cache/ts/src/components/Tappable/Tappable.d.ts +7 -4
  52. package/.cache/ts/src/components/Textarea/Textarea.d.ts +2 -3
  53. package/.cache/ts/src/components/Tooltip/Tooltip.d.ts +1 -2
  54. package/.cache/ts/src/components/UsersStack/UsersStack.d.ts +4 -2
  55. package/.cache/ts/src/components/View/View.d.ts +6 -3
  56. package/.cache/ts/src/index.d.ts +44 -44
  57. package/.cache/ts/src/lib/animate.d.ts +1 -1
  58. package/.cache/ts/src/tokenized/index.d.ts +44 -0
  59. package/README.md +1 -1
  60. package/VKUI_TOKENS_MIGRATION_GUIDE.md +0 -1
  61. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js +2 -2
  62. package/dist/cjs/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  63. package/dist/cjs/components/Alert/Alert.js +8 -6
  64. package/dist/cjs/components/Alert/Alert.js.map +1 -1
  65. package/dist/cjs/components/Avatar/Avatar.d.ts +1 -2
  66. package/dist/cjs/components/Avatar/Avatar.js +6 -13
  67. package/dist/cjs/components/Avatar/Avatar.js.map +1 -1
  68. package/dist/cjs/components/Banner/Banner.d.ts +1 -2
  69. package/dist/cjs/components/Banner/Banner.js +27 -36
  70. package/dist/cjs/components/Banner/Banner.js.map +1 -1
  71. package/dist/cjs/components/BaseGallery/BaseGallery.d.ts +4 -0
  72. package/dist/cjs/components/BaseGallery/BaseGallery.js +399 -0
  73. package/dist/cjs/components/BaseGallery/BaseGallery.js.map +1 -0
  74. package/dist/cjs/components/BaseGallery/helpers.d.ts +12 -0
  75. package/dist/cjs/components/BaseGallery/helpers.js +62 -0
  76. package/dist/cjs/components/BaseGallery/helpers.js.map +1 -0
  77. package/dist/cjs/components/BaseGallery/types.d.ts +43 -0
  78. package/dist/cjs/components/BaseGallery/types.js +6 -0
  79. package/dist/cjs/components/BaseGallery/types.js.map +1 -0
  80. package/dist/cjs/components/Button/Button.js +3 -3
  81. package/dist/cjs/components/Button/Button.js.map +1 -1
  82. package/dist/cjs/components/CalendarDay/CalendarDay.js +2 -4
  83. package/dist/cjs/components/CalendarDay/CalendarDay.js.map +1 -1
  84. package/dist/cjs/components/CalendarHeader/CalendarHeader.js +3 -5
  85. package/dist/cjs/components/CalendarHeader/CalendarHeader.js.map +1 -1
  86. package/dist/cjs/components/Cell/Cell.js +2 -2
  87. package/dist/cjs/components/Cell/Cell.js.map +1 -1
  88. package/dist/cjs/components/CellButton/CellButton.d.ts +1 -2
  89. package/dist/cjs/components/CellButton/CellButton.js +4 -12
  90. package/dist/cjs/components/CellButton/CellButton.js.map +1 -1
  91. package/dist/cjs/components/Checkbox/Checkbox.d.ts +3 -1
  92. package/dist/cjs/components/Checkbox/Checkbox.js +69 -15
  93. package/dist/cjs/components/Checkbox/Checkbox.js.map +1 -1
  94. package/dist/cjs/components/Chip/Chip.js +2 -2
  95. package/dist/cjs/components/Chip/Chip.js.map +1 -1
  96. package/dist/cjs/components/ConfigProvider/ConfigProvider.d.ts +1 -2
  97. package/dist/cjs/components/ConfigProvider/ConfigProvider.js +3 -5
  98. package/dist/cjs/components/ConfigProvider/ConfigProvider.js.map +1 -1
  99. package/dist/cjs/components/ContentCard/ContentCard.d.ts +1 -2
  100. package/dist/cjs/components/ContentCard/ContentCard.js +38 -50
  101. package/dist/cjs/components/ContentCard/ContentCard.js.map +1 -1
  102. package/dist/cjs/components/DateInput/DateInput.js +3 -3
  103. package/dist/cjs/components/DateInput/DateInput.js.map +1 -1
  104. package/dist/cjs/components/DatePicker/DatePicker.d.ts +1 -2
  105. package/dist/cjs/components/DatePicker/DatePicker.js +6 -7
  106. package/dist/cjs/components/DatePicker/DatePicker.js.map +1 -1
  107. package/dist/cjs/components/DateRangeInput/DateRangeInput.js +3 -3
  108. package/dist/cjs/components/DateRangeInput/DateRangeInput.js.map +1 -1
  109. package/dist/cjs/components/Epic/Epic.d.ts +1 -3
  110. package/dist/cjs/components/Epic/Epic.js +9 -11
  111. package/dist/cjs/components/Epic/Epic.js.map +1 -1
  112. package/dist/cjs/components/FixedLayout/FixedLayout.d.ts +1 -2
  113. package/dist/cjs/components/FixedLayout/FixedLayout.js +6 -11
  114. package/dist/cjs/components/FixedLayout/FixedLayout.js.map +1 -1
  115. package/dist/cjs/components/FocusVisible/FocusVisible.d.ts +3 -4
  116. package/dist/cjs/components/FocusVisible/FocusVisible.js.map +1 -1
  117. package/dist/cjs/components/FormItem/FormItem.js +3 -6
  118. package/dist/cjs/components/FormItem/FormItem.js.map +1 -1
  119. package/dist/cjs/components/FormLayout/FormLayout.d.ts +1 -2
  120. package/dist/cjs/components/FormLayout/FormLayout.js +3 -5
  121. package/dist/cjs/components/FormLayout/FormLayout.js.map +1 -1
  122. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.d.ts +1 -2
  123. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js +6 -10
  124. package/dist/cjs/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  125. package/dist/cjs/components/Gallery/Gallery.d.ts +6 -43
  126. package/dist/cjs/components/Gallery/Gallery.js +23 -565
  127. package/dist/cjs/components/Gallery/Gallery.js.map +1 -1
  128. package/dist/cjs/components/GridAvatar/GridAvatar.d.ts +4 -1
  129. package/dist/cjs/components/GridAvatar/GridAvatar.js +9 -11
  130. package/dist/cjs/components/GridAvatar/GridAvatar.js.map +1 -1
  131. package/dist/cjs/components/Group/Group.d.ts +4 -2
  132. package/dist/cjs/components/Group/Group.js +12 -14
  133. package/dist/cjs/components/Group/Group.js.map +1 -1
  134. package/dist/cjs/components/Header/Header.d.ts +1 -2
  135. package/dist/cjs/components/Header/Header.js +4 -8
  136. package/dist/cjs/components/Header/Header.js.map +1 -1
  137. package/dist/cjs/components/HorizontalCell/HorizontalCell.js +4 -4
  138. package/dist/cjs/components/HorizontalCell/HorizontalCell.js.map +1 -1
  139. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js +1 -1
  140. package/dist/cjs/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  141. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js +2 -4
  142. package/dist/cjs/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  143. package/dist/cjs/components/IconButton/IconButton.d.ts +5 -2
  144. package/dist/cjs/components/IconButton/IconButton.js +14 -18
  145. package/dist/cjs/components/IconButton/IconButton.js.map +1 -1
  146. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.d.ts +1 -1
  147. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js +2 -4
  148. package/dist/cjs/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  149. package/dist/cjs/components/Link/Link.d.ts +1 -2
  150. package/dist/cjs/components/Link/Link.js +5 -7
  151. package/dist/cjs/components/Link/Link.js.map +1 -1
  152. package/dist/cjs/components/List/List.d.ts +1 -2
  153. package/dist/cjs/components/List/List.js +3 -5
  154. package/dist/cjs/components/List/List.js.map +1 -1
  155. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js +2 -2
  156. package/dist/cjs/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  157. package/dist/cjs/components/ModalCard/ModalCard.d.ts +4 -2
  158. package/dist/cjs/components/ModalCard/ModalCard.js +32 -29
  159. package/dist/cjs/components/ModalCard/ModalCard.js.map +1 -1
  160. package/dist/cjs/components/ModalCardBase/ModalCardBase.js +2 -2
  161. package/dist/cjs/components/ModalCardBase/ModalCardBase.js.map +1 -1
  162. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.d.ts +1 -2
  163. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js +15 -12
  164. package/dist/cjs/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  165. package/dist/cjs/components/ModalPage/ModalPage.d.ts +4 -2
  166. package/dist/cjs/components/ModalPage/ModalPage.js +34 -31
  167. package/dist/cjs/components/ModalPage/ModalPage.js.map +1 -1
  168. package/dist/cjs/components/ModalRoot/ModalRoot.js +2 -2
  169. package/dist/cjs/components/ModalRoot/ModalRoot.js.map +1 -1
  170. package/dist/cjs/components/ModalRoot/ModalRootContext.d.ts +1 -1
  171. package/dist/cjs/components/ModalRoot/ModalRootContext.js +2 -6
  172. package/dist/cjs/components/ModalRoot/ModalRootContext.js.map +1 -1
  173. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js +2 -2
  174. package/dist/cjs/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  175. package/dist/cjs/components/ModalRoot/withModalRootContext.js +2 -2
  176. package/dist/cjs/components/ModalRoot/withModalRootContext.js.map +1 -1
  177. package/dist/cjs/components/Pagination/Pagination.js +2 -2
  178. package/dist/cjs/components/Pagination/Pagination.js.map +1 -1
  179. package/dist/cjs/components/PanelHeader/PanelHeader.js +5 -5
  180. package/dist/cjs/components/PanelHeader/PanelHeader.js.map +1 -1
  181. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.d.ts +5 -2
  182. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js +11 -11
  183. package/dist/cjs/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  184. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js +2 -2
  185. package/dist/cjs/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  186. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -2
  187. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js +4 -8
  188. package/dist/cjs/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  189. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.d.ts +1 -2
  190. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js +5 -7
  191. package/dist/cjs/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  192. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js +2 -2
  193. package/dist/cjs/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  194. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -2
  195. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js +8 -12
  196. package/dist/cjs/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  197. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -2
  198. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js +4 -8
  199. package/dist/cjs/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  200. package/dist/cjs/components/Placeholder/Placeholder.d.ts +1 -2
  201. package/dist/cjs/components/Placeholder/Placeholder.js +3 -5
  202. package/dist/cjs/components/Placeholder/Placeholder.js.map +1 -1
  203. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js +1 -10
  204. package/dist/cjs/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  205. package/dist/cjs/components/PromoBanner/PromoBanner.d.ts +2 -2
  206. package/dist/cjs/components/PromoBanner/PromoBanner.js +7 -9
  207. package/dist/cjs/components/PromoBanner/PromoBanner.js.map +1 -1
  208. package/dist/cjs/components/PullToRefresh/PullToRefresh.js +2 -2
  209. package/dist/cjs/components/PullToRefresh/PullToRefresh.js.map +1 -1
  210. package/dist/cjs/components/Radio/Radio.js +2 -4
  211. package/dist/cjs/components/Radio/Radio.js.map +1 -1
  212. package/dist/cjs/components/RangeSlider/RangeSlider.d.ts +1 -2
  213. package/dist/cjs/components/RangeSlider/RangeSlider.js +3 -5
  214. package/dist/cjs/components/RangeSlider/RangeSlider.js.map +1 -1
  215. package/dist/cjs/components/RangeSlider/UniversalSlider.js +1 -6
  216. package/dist/cjs/components/RangeSlider/UniversalSlider.js.map +1 -1
  217. package/dist/cjs/components/Removable/Removable.js +10 -7
  218. package/dist/cjs/components/Removable/Removable.js.map +1 -1
  219. package/dist/cjs/components/RichCell/RichCell.d.ts +4 -2
  220. package/dist/cjs/components/RichCell/RichCell.js +11 -11
  221. package/dist/cjs/components/RichCell/RichCell.js.map +1 -1
  222. package/dist/cjs/components/Root/Root.d.ts +1 -2
  223. package/dist/cjs/components/Root/Root.js +6 -20
  224. package/dist/cjs/components/Root/Root.js.map +1 -1
  225. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.d.ts +1 -2
  226. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js +14 -14
  227. package/dist/cjs/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  228. package/dist/cjs/components/Search/Search.d.ts +1 -2
  229. package/dist/cjs/components/Search/Search.js +19 -18
  230. package/dist/cjs/components/Search/Search.js.map +1 -1
  231. package/dist/cjs/components/SimpleCell/SimpleCell.d.ts +4 -2
  232. package/dist/cjs/components/SimpleCell/SimpleCell.js +10 -12
  233. package/dist/cjs/components/SimpleCell/SimpleCell.js.map +1 -1
  234. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.d.ts +1 -0
  235. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js +3 -2
  236. package/dist/cjs/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  237. package/dist/cjs/components/Slider/Slider.d.ts +1 -2
  238. package/dist/cjs/components/Slider/Slider.js +3 -5
  239. package/dist/cjs/components/Slider/Slider.js.map +1 -1
  240. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js +2 -2
  241. package/dist/cjs/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  242. package/dist/cjs/components/Spacing/Spacing.d.ts +2 -1
  243. package/dist/cjs/components/Spacing/Spacing.js.map +1 -1
  244. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js +2 -2
  245. package/dist/cjs/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  246. package/dist/cjs/components/Tabbar/Tabbar.d.ts +1 -2
  247. package/dist/cjs/components/Tabbar/Tabbar.js +8 -12
  248. package/dist/cjs/components/Tabbar/Tabbar.js.map +1 -1
  249. package/dist/cjs/components/TabbarItem/TabbarItem.d.ts +1 -2
  250. package/dist/cjs/components/TabbarItem/TabbarItem.js +5 -7
  251. package/dist/cjs/components/TabbarItem/TabbarItem.js.map +1 -1
  252. package/dist/cjs/components/Tabs/Tabs.d.ts +4 -2
  253. package/dist/cjs/components/Tabs/Tabs.js +10 -13
  254. package/dist/cjs/components/Tabs/Tabs.js.map +1 -1
  255. package/dist/cjs/components/TabsItem/TabsItem.d.ts +1 -2
  256. package/dist/cjs/components/TabsItem/TabsItem.js +6 -10
  257. package/dist/cjs/components/TabsItem/TabsItem.js.map +1 -1
  258. package/dist/cjs/components/Tappable/Tappable.d.ts +7 -4
  259. package/dist/cjs/components/Tappable/Tappable.js +10 -9
  260. package/dist/cjs/components/Tappable/Tappable.js.map +1 -1
  261. package/dist/cjs/components/Textarea/Textarea.d.ts +2 -3
  262. package/dist/cjs/components/Textarea/Textarea.js +14 -14
  263. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  264. package/dist/cjs/components/Tooltip/Tooltip.d.ts +1 -2
  265. package/dist/cjs/components/Tooltip/Tooltip.js +8 -13
  266. package/dist/cjs/components/Tooltip/Tooltip.js.map +1 -1
  267. package/dist/cjs/components/UsersStack/UsersStack.d.ts +4 -2
  268. package/dist/cjs/components/UsersStack/UsersStack.js +51 -46
  269. package/dist/cjs/components/UsersStack/UsersStack.js.map +1 -1
  270. package/dist/cjs/components/UsersStack/masks.js +1 -1
  271. package/dist/cjs/components/UsersStack/masks.js.map +1 -1
  272. package/dist/cjs/components/View/View.d.ts +6 -3
  273. package/dist/cjs/components/View/View.js +26 -43
  274. package/dist/cjs/components/View/View.js.map +1 -1
  275. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js +2 -2
  276. package/dist/cjs/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  277. package/dist/cjs/index.d.ts +44 -44
  278. package/dist/cjs/index.js +88 -88
  279. package/dist/cjs/index.js.map +1 -1
  280. package/dist/cjs/lib/animate.d.ts +1 -1
  281. package/dist/cjs/lib/animate.js +1 -2
  282. package/dist/cjs/lib/animate.js.map +1 -1
  283. package/dist/cjs/tokenized/index.d.ts +44 -0
  284. package/dist/cjs/tokenized/index.js +176 -0
  285. package/dist/cjs/tokenized/index.js.map +1 -1
  286. package/dist/components/ActionSheetItem/ActionSheetItem.js +1 -1
  287. package/dist/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  288. package/dist/components/Alert/Alert.js +6 -4
  289. package/dist/components/Alert/Alert.js.map +1 -1
  290. package/dist/components/Avatar/Avatar.d.ts +1 -2
  291. package/dist/components/Avatar/Avatar.js +4 -11
  292. package/dist/components/Avatar/Avatar.js.map +1 -1
  293. package/dist/components/Banner/Banner.d.ts +1 -2
  294. package/dist/components/Banner/Banner.js +25 -35
  295. package/dist/components/Banner/Banner.js.map +1 -1
  296. package/dist/components/BaseGallery/BaseGallery.d.ts +4 -0
  297. package/dist/components/BaseGallery/BaseGallery.js +371 -0
  298. package/dist/components/BaseGallery/BaseGallery.js.map +1 -0
  299. package/dist/components/BaseGallery/helpers.d.ts +12 -0
  300. package/dist/components/BaseGallery/helpers.js +50 -0
  301. package/dist/components/BaseGallery/helpers.js.map +1 -0
  302. package/dist/components/BaseGallery/types.d.ts +43 -0
  303. package/dist/components/BaseGallery/types.js +2 -0
  304. package/dist/components/BaseGallery/types.js.map +1 -0
  305. package/dist/components/Button/Button.js +2 -2
  306. package/dist/components/Button/Button.js.map +1 -1
  307. package/dist/components/CalendarDay/CalendarDay.js +1 -1
  308. package/dist/components/CalendarDay/CalendarDay.js.map +1 -1
  309. package/dist/components/CalendarHeader/CalendarHeader.js +1 -1
  310. package/dist/components/CalendarHeader/CalendarHeader.js.map +1 -1
  311. package/dist/components/Cell/Cell.js +1 -1
  312. package/dist/components/Cell/Cell.js.map +1 -1
  313. package/dist/components/CellButton/CellButton.d.ts +1 -2
  314. package/dist/components/CellButton/CellButton.js +3 -10
  315. package/dist/components/CellButton/CellButton.js.map +1 -1
  316. package/dist/components/Checkbox/Checkbox.d.ts +3 -1
  317. package/dist/components/Checkbox/Checkbox.js +67 -15
  318. package/dist/components/Checkbox/Checkbox.js.map +1 -1
  319. package/dist/components/Chip/Chip.js +1 -1
  320. package/dist/components/Chip/Chip.js.map +1 -1
  321. package/dist/components/ConfigProvider/ConfigProvider.d.ts +1 -2
  322. package/dist/components/ConfigProvider/ConfigProvider.js +2 -5
  323. package/dist/components/ConfigProvider/ConfigProvider.js.map +1 -1
  324. package/dist/components/ContentCard/ContentCard.d.ts +1 -2
  325. package/dist/components/ContentCard/ContentCard.js +35 -46
  326. package/dist/components/ContentCard/ContentCard.js.map +1 -1
  327. package/dist/components/DateInput/DateInput.js +1 -1
  328. package/dist/components/DateInput/DateInput.js.map +1 -1
  329. package/dist/components/DatePicker/DatePicker.d.ts +1 -2
  330. package/dist/components/DatePicker/DatePicker.js +4 -4
  331. package/dist/components/DatePicker/DatePicker.js.map +1 -1
  332. package/dist/components/DateRangeInput/DateRangeInput.js +1 -1
  333. package/dist/components/DateRangeInput/DateRangeInput.js.map +1 -1
  334. package/dist/components/Epic/Epic.d.ts +1 -3
  335. package/dist/components/Epic/Epic.js +8 -6
  336. package/dist/components/Epic/Epic.js.map +1 -1
  337. package/dist/components/FixedLayout/FixedLayout.d.ts +1 -2
  338. package/dist/components/FixedLayout/FixedLayout.js +5 -11
  339. package/dist/components/FixedLayout/FixedLayout.js.map +1 -1
  340. package/dist/components/FocusVisible/FocusVisible.d.ts +3 -4
  341. package/dist/components/FocusVisible/FocusVisible.js.map +1 -1
  342. package/dist/components/FormItem/FormItem.js +3 -6
  343. package/dist/components/FormItem/FormItem.js.map +1 -1
  344. package/dist/components/FormLayout/FormLayout.d.ts +1 -2
  345. package/dist/components/FormLayout/FormLayout.js +2 -5
  346. package/dist/components/FormLayout/FormLayout.js.map +1 -1
  347. package/dist/components/FormLayoutGroup/FormLayoutGroup.d.ts +1 -2
  348. package/dist/components/FormLayoutGroup/FormLayoutGroup.js +5 -10
  349. package/dist/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  350. package/dist/components/Gallery/Gallery.d.ts +6 -43
  351. package/dist/components/Gallery/Gallery.js +20 -567
  352. package/dist/components/Gallery/Gallery.js.map +1 -1
  353. package/dist/components/GridAvatar/GridAvatar.d.ts +4 -1
  354. package/dist/components/GridAvatar/GridAvatar.js +8 -9
  355. package/dist/components/GridAvatar/GridAvatar.js.map +1 -1
  356. package/dist/components/Group/Group.d.ts +4 -2
  357. package/dist/components/Group/Group.js +9 -10
  358. package/dist/components/Group/Group.js.map +1 -1
  359. package/dist/components/Header/Header.d.ts +1 -2
  360. package/dist/components/Header/Header.js +3 -8
  361. package/dist/components/Header/Header.js.map +1 -1
  362. package/dist/components/HorizontalCell/HorizontalCell.js +2 -2
  363. package/dist/components/HorizontalCell/HorizontalCell.js.map +1 -1
  364. package/dist/components/HorizontalScroll/HorizontalScroll.js +1 -1
  365. package/dist/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  366. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  367. package/dist/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  368. package/dist/components/IconButton/IconButton.d.ts +5 -2
  369. package/dist/components/IconButton/IconButton.js +11 -13
  370. package/dist/components/IconButton/IconButton.js.map +1 -1
  371. package/dist/components/InitialsAvatar/InitialsAvatar.d.ts +1 -1
  372. package/dist/components/InitialsAvatar/InitialsAvatar.js +1 -1
  373. package/dist/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  374. package/dist/components/Link/Link.d.ts +1 -2
  375. package/dist/components/Link/Link.js +3 -6
  376. package/dist/components/Link/Link.js.map +1 -1
  377. package/dist/components/List/List.d.ts +1 -2
  378. package/dist/components/List/List.js +2 -5
  379. package/dist/components/List/List.js.map +1 -1
  380. package/dist/components/MiniInfoCell/MiniInfoCell.js +1 -1
  381. package/dist/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  382. package/dist/components/ModalCard/ModalCard.d.ts +4 -2
  383. package/dist/components/ModalCard/ModalCard.js +29 -25
  384. package/dist/components/ModalCard/ModalCard.js.map +1 -1
  385. package/dist/components/ModalCardBase/ModalCardBase.js +1 -1
  386. package/dist/components/ModalCardBase/ModalCardBase.js.map +1 -1
  387. package/dist/components/ModalDismissButton/ModalDismissButton.d.ts +1 -2
  388. package/dist/components/ModalDismissButton/ModalDismissButton.js +10 -9
  389. package/dist/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  390. package/dist/components/ModalPage/ModalPage.d.ts +4 -2
  391. package/dist/components/ModalPage/ModalPage.js +31 -28
  392. package/dist/components/ModalPage/ModalPage.js.map +1 -1
  393. package/dist/components/ModalRoot/ModalRoot.js +1 -1
  394. package/dist/components/ModalRoot/ModalRoot.js.map +1 -1
  395. package/dist/components/ModalRoot/ModalRootContext.d.ts +1 -1
  396. package/dist/components/ModalRoot/ModalRootContext.js +1 -3
  397. package/dist/components/ModalRoot/ModalRootContext.js.map +1 -1
  398. package/dist/components/ModalRoot/ModalRootDesktop.js +1 -1
  399. package/dist/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  400. package/dist/components/ModalRoot/withModalRootContext.js +1 -1
  401. package/dist/components/ModalRoot/withModalRootContext.js.map +1 -1
  402. package/dist/components/Pagination/Pagination.js +1 -1
  403. package/dist/components/Pagination/Pagination.js.map +1 -1
  404. package/dist/components/PanelHeader/PanelHeader.js +2 -2
  405. package/dist/components/PanelHeader/PanelHeader.js.map +1 -1
  406. package/dist/components/PanelHeaderBack/PanelHeaderBack.d.ts +5 -2
  407. package/dist/components/PanelHeaderBack/PanelHeaderBack.js +8 -9
  408. package/dist/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  409. package/dist/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
  410. package/dist/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  411. package/dist/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -2
  412. package/dist/components/PanelHeaderClose/PanelHeaderClose.js +3 -8
  413. package/dist/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  414. package/dist/components/PanelHeaderContent/PanelHeaderContent.d.ts +1 -2
  415. package/dist/components/PanelHeaderContent/PanelHeaderContent.js +3 -6
  416. package/dist/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  417. package/dist/components/PanelHeaderContext/PanelHeaderContext.js +1 -1
  418. package/dist/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  419. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -2
  420. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js +7 -12
  421. package/dist/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  422. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -2
  423. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js +3 -8
  424. package/dist/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  425. package/dist/components/Placeholder/Placeholder.d.ts +1 -2
  426. package/dist/components/Placeholder/Placeholder.js +2 -5
  427. package/dist/components/Placeholder/Placeholder.js.map +1 -1
  428. package/dist/components/PopoutWrapper/PopoutWrapper.js +1 -9
  429. package/dist/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  430. package/dist/components/PromoBanner/PromoBanner.d.ts +2 -2
  431. package/dist/components/PromoBanner/PromoBanner.js +4 -7
  432. package/dist/components/PromoBanner/PromoBanner.js.map +1 -1
  433. package/dist/components/PullToRefresh/PullToRefresh.js +1 -1
  434. package/dist/components/PullToRefresh/PullToRefresh.js.map +1 -1
  435. package/dist/components/Radio/Radio.js +1 -1
  436. package/dist/components/Radio/Radio.js.map +1 -1
  437. package/dist/components/RangeSlider/RangeSlider.d.ts +1 -2
  438. package/dist/components/RangeSlider/RangeSlider.js +2 -5
  439. package/dist/components/RangeSlider/RangeSlider.js.map +1 -1
  440. package/dist/components/RangeSlider/UniversalSlider.js +1 -5
  441. package/dist/components/RangeSlider/UniversalSlider.js.map +1 -1
  442. package/dist/components/Removable/Removable.js +7 -4
  443. package/dist/components/Removable/Removable.js.map +1 -1
  444. package/dist/components/RichCell/RichCell.d.ts +4 -2
  445. package/dist/components/RichCell/RichCell.js +8 -7
  446. package/dist/components/RichCell/RichCell.js.map +1 -1
  447. package/dist/components/Root/Root.d.ts +1 -2
  448. package/dist/components/Root/Root.js +5 -19
  449. package/dist/components/Root/Root.js.map +1 -1
  450. package/dist/components/ScreenSpinner/ScreenSpinner.d.ts +1 -2
  451. package/dist/components/ScreenSpinner/ScreenSpinner.js +12 -13
  452. package/dist/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  453. package/dist/components/Search/Search.d.ts +1 -2
  454. package/dist/components/Search/Search.js +17 -15
  455. package/dist/components/Search/Search.js.map +1 -1
  456. package/dist/components/SimpleCell/SimpleCell.d.ts +4 -2
  457. package/dist/components/SimpleCell/SimpleCell.js +7 -8
  458. package/dist/components/SimpleCell/SimpleCell.js.map +1 -1
  459. package/dist/components/SimpleCheckbox/SimpleCheckbox.d.ts +1 -0
  460. package/dist/components/SimpleCheckbox/SimpleCheckbox.js +2 -1
  461. package/dist/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  462. package/dist/components/Slider/Slider.d.ts +1 -2
  463. package/dist/components/Slider/Slider.js +2 -5
  464. package/dist/components/Slider/Slider.js.map +1 -1
  465. package/dist/components/SliderSwitch/SliderSwitchButton.js +1 -1
  466. package/dist/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  467. package/dist/components/Spacing/Spacing.d.ts +2 -1
  468. package/dist/components/Spacing/Spacing.js.map +1 -1
  469. package/dist/components/SubnavigationButton/SubnavigationButton.js +1 -1
  470. package/dist/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  471. package/dist/components/Tabbar/Tabbar.d.ts +1 -2
  472. package/dist/components/Tabbar/Tabbar.js +6 -11
  473. package/dist/components/Tabbar/Tabbar.js.map +1 -1
  474. package/dist/components/TabbarItem/TabbarItem.d.ts +1 -2
  475. package/dist/components/TabbarItem/TabbarItem.js +3 -6
  476. package/dist/components/TabbarItem/TabbarItem.js.map +1 -1
  477. package/dist/components/Tabs/Tabs.d.ts +4 -2
  478. package/dist/components/Tabs/Tabs.js +8 -9
  479. package/dist/components/Tabs/Tabs.js.map +1 -1
  480. package/dist/components/TabsItem/TabsItem.d.ts +1 -2
  481. package/dist/components/TabsItem/TabsItem.js +4 -9
  482. package/dist/components/TabsItem/TabsItem.js.map +1 -1
  483. package/dist/components/Tappable/Tappable.d.ts +7 -4
  484. package/dist/components/Tappable/Tappable.js +9 -6
  485. package/dist/components/Tappable/Tappable.js.map +1 -1
  486. package/dist/components/Textarea/Textarea.d.ts +2 -3
  487. package/dist/components/Textarea/Textarea.js +12 -9
  488. package/dist/components/Textarea/Textarea.js.map +1 -1
  489. package/dist/components/Tooltip/Tooltip.d.ts +1 -2
  490. package/dist/components/Tooltip/Tooltip.js +7 -13
  491. package/dist/components/Tooltip/Tooltip.js.map +1 -1
  492. package/dist/components/UsersStack/UsersStack.d.ts +4 -2
  493. package/dist/components/UsersStack/UsersStack.js +48 -39
  494. package/dist/components/UsersStack/UsersStack.js.map +1 -1
  495. package/dist/components/UsersStack/masks.js +1 -1
  496. package/dist/components/UsersStack/masks.js.map +1 -1
  497. package/dist/components/View/View.d.ts +6 -3
  498. package/dist/components/View/View.js +25 -39
  499. package/dist/components/View/View.js.map +1 -1
  500. package/dist/components/WriteBarIcon/WriteBarIcon.js +1 -1
  501. package/dist/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  502. package/dist/components.css +26 -8
  503. package/dist/components.css.map +1 -1
  504. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js +1 -1
  505. package/dist/cssm/components/ActionSheetItem/ActionSheetItem.js.map +1 -1
  506. package/dist/cssm/components/Alert/Alert.js +6 -4
  507. package/dist/cssm/components/Alert/Alert.js.map +1 -1
  508. package/dist/cssm/components/Avatar/Avatar.css +5 -1
  509. package/dist/cssm/components/Avatar/Avatar.d.ts +1 -2
  510. package/dist/cssm/components/Avatar/Avatar.js +4 -11
  511. package/dist/cssm/components/Avatar/Avatar.js.map +1 -1
  512. package/dist/cssm/components/Banner/Banner.css +5 -1
  513. package/dist/cssm/components/Banner/Banner.d.ts +1 -2
  514. package/dist/cssm/components/Banner/Banner.js +25 -35
  515. package/dist/cssm/components/Banner/Banner.js.map +1 -1
  516. package/dist/cssm/components/BaseGallery/BaseGallery.css +1 -0
  517. package/dist/cssm/components/BaseGallery/BaseGallery.d.ts +4 -0
  518. package/dist/cssm/components/BaseGallery/BaseGallery.js +372 -0
  519. package/dist/cssm/components/BaseGallery/BaseGallery.js.map +1 -0
  520. package/dist/cssm/components/BaseGallery/helpers.d.ts +12 -0
  521. package/dist/cssm/components/BaseGallery/helpers.js +50 -0
  522. package/dist/cssm/components/BaseGallery/helpers.js.map +1 -0
  523. package/dist/cssm/components/BaseGallery/types.d.ts +43 -0
  524. package/dist/cssm/components/BaseGallery/types.js +2 -0
  525. package/dist/cssm/components/BaseGallery/types.js.map +1 -0
  526. package/dist/cssm/components/Button/Button.css +1 -1
  527. package/dist/cssm/components/Button/Button.js +2 -2
  528. package/dist/cssm/components/Button/Button.js.map +1 -1
  529. package/dist/cssm/components/CalendarDay/CalendarDay.js +1 -1
  530. package/dist/cssm/components/CalendarDay/CalendarDay.js.map +1 -1
  531. package/dist/cssm/components/CalendarHeader/CalendarHeader.js +1 -1
  532. package/dist/cssm/components/CalendarHeader/CalendarHeader.js.map +1 -1
  533. package/dist/cssm/components/Cell/Cell.js +1 -1
  534. package/dist/cssm/components/Cell/Cell.js.map +1 -1
  535. package/dist/cssm/components/CellButton/CellButton.css +1 -1
  536. package/dist/cssm/components/CellButton/CellButton.d.ts +1 -2
  537. package/dist/cssm/components/CellButton/CellButton.js +3 -10
  538. package/dist/cssm/components/CellButton/CellButton.js.map +1 -1
  539. package/dist/cssm/components/Checkbox/Checkbox.css +1 -1
  540. package/dist/cssm/components/Checkbox/Checkbox.d.ts +3 -1
  541. package/dist/cssm/components/Checkbox/Checkbox.js +67 -15
  542. package/dist/cssm/components/Checkbox/Checkbox.js.map +1 -1
  543. package/dist/cssm/components/Chip/Chip.js +1 -1
  544. package/dist/cssm/components/Chip/Chip.js.map +1 -1
  545. package/dist/cssm/components/ConfigProvider/ConfigProvider.d.ts +1 -2
  546. package/dist/cssm/components/ConfigProvider/ConfigProvider.js +2 -5
  547. package/dist/cssm/components/ConfigProvider/ConfigProvider.js.map +1 -1
  548. package/dist/cssm/components/ContentCard/ContentCard.css +1 -1
  549. package/dist/cssm/components/ContentCard/ContentCard.d.ts +1 -2
  550. package/dist/cssm/components/ContentCard/ContentCard.js +35 -46
  551. package/dist/cssm/components/ContentCard/ContentCard.js.map +1 -1
  552. package/dist/cssm/components/DateInput/DateInput.js +1 -1
  553. package/dist/cssm/components/DateInput/DateInput.js.map +1 -1
  554. package/dist/cssm/components/DatePicker/DatePicker.d.ts +1 -2
  555. package/dist/cssm/components/DatePicker/DatePicker.js +4 -4
  556. package/dist/cssm/components/DatePicker/DatePicker.js.map +1 -1
  557. package/dist/cssm/components/DateRangeInput/DateRangeInput.js +1 -1
  558. package/dist/cssm/components/DateRangeInput/DateRangeInput.js.map +1 -1
  559. package/dist/cssm/components/Epic/Epic.d.ts +1 -3
  560. package/dist/cssm/components/Epic/Epic.js +8 -6
  561. package/dist/cssm/components/Epic/Epic.js.map +1 -1
  562. package/dist/cssm/components/FixedLayout/FixedLayout.css +1 -1
  563. package/dist/cssm/components/FixedLayout/FixedLayout.d.ts +1 -2
  564. package/dist/cssm/components/FixedLayout/FixedLayout.js +5 -11
  565. package/dist/cssm/components/FixedLayout/FixedLayout.js.map +1 -1
  566. package/dist/cssm/components/FocusVisible/FocusVisible.css +1 -1
  567. package/dist/cssm/components/FocusVisible/FocusVisible.d.ts +3 -4
  568. package/dist/cssm/components/FocusVisible/FocusVisible.js.map +1 -1
  569. package/dist/cssm/components/FormItem/FormItem.css +1 -1
  570. package/dist/cssm/components/FormItem/FormItem.js +3 -6
  571. package/dist/cssm/components/FormItem/FormItem.js.map +1 -1
  572. package/dist/cssm/components/FormLayout/FormLayout.d.ts +1 -2
  573. package/dist/cssm/components/FormLayout/FormLayout.js +2 -5
  574. package/dist/cssm/components/FormLayout/FormLayout.js.map +1 -1
  575. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.css +1 -1
  576. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.d.ts +1 -2
  577. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js +5 -10
  578. package/dist/cssm/components/FormLayoutGroup/FormLayoutGroup.js.map +1 -1
  579. package/dist/cssm/components/Gallery/Gallery.d.ts +6 -43
  580. package/dist/cssm/components/Gallery/Gallery.js +20 -568
  581. package/dist/cssm/components/Gallery/Gallery.js.map +1 -1
  582. package/dist/cssm/components/GridAvatar/GridAvatar.d.ts +4 -1
  583. package/dist/cssm/components/GridAvatar/GridAvatar.js +8 -9
  584. package/dist/cssm/components/GridAvatar/GridAvatar.js.map +1 -1
  585. package/dist/cssm/components/Group/Group.d.ts +4 -2
  586. package/dist/cssm/components/Group/Group.js +9 -10
  587. package/dist/cssm/components/Group/Group.js.map +1 -1
  588. package/dist/cssm/components/Header/Header.d.ts +1 -2
  589. package/dist/cssm/components/Header/Header.js +3 -8
  590. package/dist/cssm/components/Header/Header.js.map +1 -1
  591. package/dist/cssm/components/HorizontalCell/HorizontalCell.js +2 -2
  592. package/dist/cssm/components/HorizontalCell/HorizontalCell.js.map +1 -1
  593. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js +1 -1
  594. package/dist/cssm/components/HorizontalScroll/HorizontalScroll.js.map +1 -1
  595. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js +1 -1
  596. package/dist/cssm/components/HorizontalScroll/HorizontalScrollArrow.js.map +1 -1
  597. package/dist/cssm/components/IconButton/IconButton.css +1 -1
  598. package/dist/cssm/components/IconButton/IconButton.d.ts +5 -2
  599. package/dist/cssm/components/IconButton/IconButton.js +11 -13
  600. package/dist/cssm/components/IconButton/IconButton.js.map +1 -1
  601. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.css +1 -1
  602. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.d.ts +1 -1
  603. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js +1 -1
  604. package/dist/cssm/components/InitialsAvatar/InitialsAvatar.js.map +1 -1
  605. package/dist/cssm/components/Link/Link.d.ts +1 -2
  606. package/dist/cssm/components/Link/Link.js +3 -6
  607. package/dist/cssm/components/Link/Link.js.map +1 -1
  608. package/dist/cssm/components/List/List.d.ts +1 -2
  609. package/dist/cssm/components/List/List.js +2 -5
  610. package/dist/cssm/components/List/List.js.map +1 -1
  611. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js +1 -1
  612. package/dist/cssm/components/MiniInfoCell/MiniInfoCell.js.map +1 -1
  613. package/dist/cssm/components/ModalCard/ModalCard.d.ts +4 -2
  614. package/dist/cssm/components/ModalCard/ModalCard.js +29 -25
  615. package/dist/cssm/components/ModalCard/ModalCard.js.map +1 -1
  616. package/dist/cssm/components/ModalCardBase/ModalCardBase.js +1 -1
  617. package/dist/cssm/components/ModalCardBase/ModalCardBase.js.map +1 -1
  618. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.d.ts +1 -2
  619. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js +10 -9
  620. package/dist/cssm/components/ModalDismissButton/ModalDismissButton.js.map +1 -1
  621. package/dist/cssm/components/ModalPage/ModalPage.d.ts +4 -2
  622. package/dist/cssm/components/ModalPage/ModalPage.js +31 -28
  623. package/dist/cssm/components/ModalPage/ModalPage.js.map +1 -1
  624. package/dist/cssm/components/ModalRoot/ModalRoot.js +1 -1
  625. package/dist/cssm/components/ModalRoot/ModalRoot.js.map +1 -1
  626. package/dist/cssm/components/ModalRoot/ModalRootContext.d.ts +1 -1
  627. package/dist/cssm/components/ModalRoot/ModalRootContext.js +1 -3
  628. package/dist/cssm/components/ModalRoot/ModalRootContext.js.map +1 -1
  629. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js +1 -1
  630. package/dist/cssm/components/ModalRoot/ModalRootDesktop.js.map +1 -1
  631. package/dist/cssm/components/ModalRoot/withModalRootContext.js +1 -1
  632. package/dist/cssm/components/ModalRoot/withModalRootContext.js.map +1 -1
  633. package/dist/cssm/components/Pagination/Pagination.js +1 -1
  634. package/dist/cssm/components/Pagination/Pagination.js.map +1 -1
  635. package/dist/cssm/components/PanelHeader/PanelHeader.css +1 -1
  636. package/dist/cssm/components/PanelHeader/PanelHeader.js +2 -2
  637. package/dist/cssm/components/PanelHeader/PanelHeader.js.map +1 -1
  638. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.d.ts +5 -2
  639. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js +8 -9
  640. package/dist/cssm/components/PanelHeaderBack/PanelHeaderBack.js.map +1 -1
  641. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js +1 -1
  642. package/dist/cssm/components/PanelHeaderButton/PanelHeaderButton.js.map +1 -1
  643. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.d.ts +1 -2
  644. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js +3 -8
  645. package/dist/cssm/components/PanelHeaderClose/PanelHeaderClose.js.map +1 -1
  646. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.d.ts +1 -2
  647. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js +3 -6
  648. package/dist/cssm/components/PanelHeaderContent/PanelHeaderContent.js.map +1 -1
  649. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js +1 -1
  650. package/dist/cssm/components/PanelHeaderContext/PanelHeaderContext.js.map +1 -1
  651. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.d.ts +1 -2
  652. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js +7 -12
  653. package/dist/cssm/components/PanelHeaderEdit/PanelHeaderEdit.js.map +1 -1
  654. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.d.ts +1 -2
  655. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js +3 -8
  656. package/dist/cssm/components/PanelHeaderSubmit/PanelHeaderSubmit.js.map +1 -1
  657. package/dist/cssm/components/Placeholder/Placeholder.d.ts +1 -2
  658. package/dist/cssm/components/Placeholder/Placeholder.js +2 -5
  659. package/dist/cssm/components/Placeholder/Placeholder.js.map +1 -1
  660. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.css +1 -1
  661. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js +1 -9
  662. package/dist/cssm/components/PopoutWrapper/PopoutWrapper.js.map +1 -1
  663. package/dist/cssm/components/PromoBanner/PromoBanner.d.ts +2 -2
  664. package/dist/cssm/components/PromoBanner/PromoBanner.js +4 -7
  665. package/dist/cssm/components/PromoBanner/PromoBanner.js.map +1 -1
  666. package/dist/cssm/components/PullToRefresh/PullToRefresh.js +1 -1
  667. package/dist/cssm/components/PullToRefresh/PullToRefresh.js.map +1 -1
  668. package/dist/cssm/components/Radio/Radio.js +1 -1
  669. package/dist/cssm/components/Radio/Radio.js.map +1 -1
  670. package/dist/cssm/components/RangeSlider/RangeSlider.d.ts +1 -2
  671. package/dist/cssm/components/RangeSlider/RangeSlider.js +2 -5
  672. package/dist/cssm/components/RangeSlider/RangeSlider.js.map +1 -1
  673. package/dist/cssm/components/RangeSlider/UniversalSlider.js +1 -5
  674. package/dist/cssm/components/RangeSlider/UniversalSlider.js.map +1 -1
  675. package/dist/cssm/components/Removable/Removable.css +1 -1
  676. package/dist/cssm/components/Removable/Removable.js +7 -4
  677. package/dist/cssm/components/Removable/Removable.js.map +1 -1
  678. package/dist/cssm/components/RichCell/RichCell.d.ts +4 -2
  679. package/dist/cssm/components/RichCell/RichCell.js +8 -7
  680. package/dist/cssm/components/RichCell/RichCell.js.map +1 -1
  681. package/dist/cssm/components/Root/Root.css +1 -1
  682. package/dist/cssm/components/Root/Root.d.ts +1 -2
  683. package/dist/cssm/components/Root/Root.js +5 -19
  684. package/dist/cssm/components/Root/Root.js.map +1 -1
  685. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.d.ts +1 -2
  686. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js +12 -13
  687. package/dist/cssm/components/ScreenSpinner/ScreenSpinner.js.map +1 -1
  688. package/dist/cssm/components/Search/Search.d.ts +1 -2
  689. package/dist/cssm/components/Search/Search.js +17 -15
  690. package/dist/cssm/components/Search/Search.js.map +1 -1
  691. package/dist/cssm/components/SimpleCell/SimpleCell.css +1 -1
  692. package/dist/cssm/components/SimpleCell/SimpleCell.d.ts +4 -2
  693. package/dist/cssm/components/SimpleCell/SimpleCell.js +7 -8
  694. package/dist/cssm/components/SimpleCell/SimpleCell.js.map +1 -1
  695. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.d.ts +1 -0
  696. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js +2 -1
  697. package/dist/cssm/components/SimpleCheckbox/SimpleCheckbox.js.map +1 -1
  698. package/dist/cssm/components/Slider/Slider.css +3 -1
  699. package/dist/cssm/components/Slider/Slider.d.ts +1 -2
  700. package/dist/cssm/components/Slider/Slider.js +2 -5
  701. package/dist/cssm/components/Slider/Slider.js.map +1 -1
  702. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js +1 -1
  703. package/dist/cssm/components/SliderSwitch/SliderSwitchButton.js.map +1 -1
  704. package/dist/cssm/components/Snackbar/Snackbar.css +1 -1
  705. package/dist/cssm/components/Spacing/Spacing.css +1 -1
  706. package/dist/cssm/components/Spacing/Spacing.d.ts +2 -1
  707. package/dist/cssm/components/Spacing/Spacing.js.map +1 -1
  708. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js +1 -1
  709. package/dist/cssm/components/SubnavigationButton/SubnavigationButton.js.map +1 -1
  710. package/dist/cssm/components/Tabbar/Tabbar.d.ts +1 -2
  711. package/dist/cssm/components/Tabbar/Tabbar.js +6 -11
  712. package/dist/cssm/components/Tabbar/Tabbar.js.map +1 -1
  713. package/dist/cssm/components/TabbarItem/TabbarItem.d.ts +1 -2
  714. package/dist/cssm/components/TabbarItem/TabbarItem.js +3 -6
  715. package/dist/cssm/components/TabbarItem/TabbarItem.js.map +1 -1
  716. package/dist/cssm/components/Tabs/Tabs.d.ts +4 -2
  717. package/dist/cssm/components/Tabs/Tabs.js +8 -9
  718. package/dist/cssm/components/Tabs/Tabs.js.map +1 -1
  719. package/dist/cssm/components/TabsItem/TabsItem.d.ts +1 -2
  720. package/dist/cssm/components/TabsItem/TabsItem.js +4 -9
  721. package/dist/cssm/components/TabsItem/TabsItem.js.map +1 -1
  722. package/dist/cssm/components/Tappable/Tappable.css +5 -1
  723. package/dist/cssm/components/Tappable/Tappable.d.ts +7 -4
  724. package/dist/cssm/components/Tappable/Tappable.js +9 -6
  725. package/dist/cssm/components/Tappable/Tappable.js.map +1 -1
  726. package/dist/cssm/components/Textarea/Textarea.css +1 -1
  727. package/dist/cssm/components/Textarea/Textarea.d.ts +2 -3
  728. package/dist/cssm/components/Textarea/Textarea.js +12 -9
  729. package/dist/cssm/components/Textarea/Textarea.js.map +1 -1
  730. package/dist/cssm/components/Tooltip/Tooltip.d.ts +1 -2
  731. package/dist/cssm/components/Tooltip/Tooltip.js +7 -13
  732. package/dist/cssm/components/Tooltip/Tooltip.js.map +1 -1
  733. package/dist/cssm/components/UsersStack/UsersStack.css +5 -1
  734. package/dist/cssm/components/UsersStack/UsersStack.d.ts +4 -2
  735. package/dist/cssm/components/UsersStack/UsersStack.js +48 -39
  736. package/dist/cssm/components/UsersStack/UsersStack.js.map +1 -1
  737. package/dist/cssm/components/UsersStack/masks.js +1 -1
  738. package/dist/cssm/components/UsersStack/masks.js.map +1 -1
  739. package/dist/cssm/components/View/View.css +1 -1
  740. package/dist/cssm/components/View/View.d.ts +6 -3
  741. package/dist/cssm/components/View/View.js +25 -39
  742. package/dist/cssm/components/View/View.js.map +1 -1
  743. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js +1 -1
  744. package/dist/cssm/components/WriteBarIcon/WriteBarIcon.js.map +1 -1
  745. package/dist/cssm/index.d.ts +44 -44
  746. package/dist/cssm/index.js +44 -44
  747. package/dist/cssm/index.js.map +1 -1
  748. package/dist/cssm/lib/animate.d.ts +1 -1
  749. package/dist/cssm/lib/animate.js +1 -2
  750. package/dist/cssm/lib/animate.js.map +1 -1
  751. package/dist/cssm/styles/components.css +26 -8
  752. package/dist/cssm/tokenized/index.d.ts +44 -0
  753. package/dist/cssm/tokenized/index.js +22 -0
  754. package/dist/cssm/tokenized/index.js.map +1 -1
  755. package/dist/index.d.ts +44 -44
  756. package/dist/index.js +44 -44
  757. package/dist/index.js.map +1 -1
  758. package/dist/lib/animate.d.ts +1 -1
  759. package/dist/lib/animate.js +1 -2
  760. package/dist/lib/animate.js.map +1 -1
  761. package/dist/tokenized/index.d.ts +44 -0
  762. package/dist/tokenized/index.js +22 -0
  763. package/dist/tokenized/index.js.map +1 -1
  764. package/dist/vkui.css +26 -8
  765. package/dist/vkui.css.map +1 -1
  766. package/package.json +3 -3
  767. package/src/components/ActionSheetItem/ActionSheetItem.tsx +1 -1
  768. package/src/components/Alert/Alert.tsx +6 -4
  769. package/src/components/Avatar/Avatar.css +27 -20
  770. package/src/components/Avatar/Avatar.tsx +3 -9
  771. package/src/components/Avatar/Readme.md +43 -304
  772. package/src/components/Banner/Banner.css +24 -25
  773. package/src/components/Banner/Banner.tsx +28 -42
  774. package/src/components/{Gallery/Gallery.css → BaseGallery/BaseGallery.css} +7 -3
  775. package/src/components/BaseGallery/BaseGallery.tsx +394 -0
  776. package/src/components/BaseGallery/helpers.ts +51 -0
  777. package/src/components/BaseGallery/types.ts +52 -0
  778. package/src/components/Button/Button.css +4 -0
  779. package/src/components/Button/Button.tsx +3 -2
  780. package/src/components/CalendarDay/CalendarDay.tsx +1 -1
  781. package/src/components/CalendarHeader/CalendarHeader.tsx +1 -1
  782. package/src/components/Cell/Cell.tsx +1 -1
  783. package/src/components/CellButton/CellButton.css +10 -4
  784. package/src/components/CellButton/CellButton.tsx +4 -13
  785. package/src/components/Checkbox/Checkbox.css +41 -55
  786. package/src/components/Checkbox/Checkbox.tsx +89 -30
  787. package/src/components/Checkbox/Readme.md +19 -0
  788. package/src/components/Chip/Chip.tsx +1 -1
  789. package/src/components/ConfigProvider/ConfigProvider.tsx +1 -4
  790. package/src/components/ContentCard/ContentCard.css +10 -18
  791. package/src/components/ContentCard/ContentCard.tsx +44 -49
  792. package/src/components/ContentCard/Readme.md +6 -0
  793. package/src/components/DateInput/DateInput.tsx +1 -1
  794. package/src/components/DatePicker/DatePicker.tsx +4 -3
  795. package/src/components/DateRangeInput/DateRangeInput.tsx +1 -1
  796. package/src/components/Epic/Epic.tsx +7 -6
  797. package/src/components/FixedLayout/FixedLayout.css +1 -1
  798. package/src/components/FixedLayout/FixedLayout.tsx +5 -10
  799. package/src/components/FocusVisible/FocusVisible.css +1 -1
  800. package/src/components/FocusVisible/FocusVisible.tsx +2 -5
  801. package/src/components/FormItem/FormItem.css +22 -13
  802. package/src/components/FormItem/FormItem.tsx +3 -6
  803. package/src/components/FormLayout/FormLayout.tsx +3 -4
  804. package/src/components/FormLayoutGroup/FormLayoutGroup.css +2 -1
  805. package/src/components/FormLayoutGroup/FormLayoutGroup.tsx +3 -9
  806. package/src/components/Gallery/Gallery.tsx +10 -512
  807. package/src/components/GridAvatar/GridAvatar.tsx +17 -15
  808. package/src/components/Group/Group.tsx +8 -11
  809. package/src/components/Group/Readme.md +129 -134
  810. package/src/components/Header/Header.tsx +2 -9
  811. package/src/components/HorizontalCell/HorizontalCell.tsx +2 -2
  812. package/src/components/HorizontalScroll/HorizontalScroll.tsx +4 -1
  813. package/src/components/HorizontalScroll/HorizontalScrollArrow.tsx +1 -1
  814. package/src/components/IconButton/IconButton.css +14 -19
  815. package/src/components/IconButton/IconButton.tsx +14 -16
  816. package/src/components/IconButton/Readme.md +51 -0
  817. package/src/components/InitialsAvatar/InitialsAvatar.css +26 -29
  818. package/src/components/InitialsAvatar/InitialsAvatar.tsx +2 -2
  819. package/src/components/Link/Link.tsx +5 -5
  820. package/src/components/List/List.tsx +3 -7
  821. package/src/components/MiniInfoCell/MiniInfoCell.tsx +1 -1
  822. package/src/components/ModalCard/ModalCard.tsx +31 -30
  823. package/src/components/ModalCardBase/ModalCardBase.tsx +1 -1
  824. package/src/components/ModalDismissButton/ModalDismissButton.tsx +7 -12
  825. package/src/components/ModalPage/ModalPage.tsx +32 -32
  826. package/src/components/ModalRoot/ModalRoot.tsx +2 -1
  827. package/src/components/ModalRoot/ModalRootContext.tsx +0 -3
  828. package/src/components/ModalRoot/ModalRootDesktop.tsx +2 -1
  829. package/src/components/ModalRoot/withModalRootContext.tsx +2 -1
  830. package/src/components/Pagination/Pagination.tsx +1 -1
  831. package/src/components/PanelHeader/PanelHeader.css +9 -0
  832. package/src/components/PanelHeader/PanelHeader.tsx +2 -2
  833. package/src/components/PanelHeaderBack/PanelHeaderBack.tsx +9 -8
  834. package/src/components/PanelHeaderButton/PanelHeaderButton.tsx +1 -1
  835. package/src/components/PanelHeaderClose/PanelHeaderClose.tsx +3 -11
  836. package/src/components/PanelHeaderContent/PanelHeaderContent.tsx +4 -5
  837. package/src/components/PanelHeaderContext/PanelHeaderContext.tsx +1 -1
  838. package/src/components/PanelHeaderEdit/PanelHeaderEdit.tsx +4 -13
  839. package/src/components/PanelHeaderSubmit/PanelHeaderSubmit.tsx +3 -11
  840. package/src/components/Placeholder/Placeholder.tsx +3 -4
  841. package/src/components/PopoutWrapper/PopoutWrapper.css +4 -15
  842. package/src/components/PopoutWrapper/PopoutWrapper.tsx +5 -11
  843. package/src/components/PromoBanner/PromoBanner.tsx +3 -6
  844. package/src/components/PullToRefresh/PullToRefresh.tsx +1 -1
  845. package/src/components/Radio/Radio.tsx +1 -1
  846. package/src/components/RangeSlider/RangeSlider.tsx +1 -4
  847. package/src/components/RangeSlider/Readme.md +19 -27
  848. package/src/components/RangeSlider/UniversalSlider.tsx +1 -4
  849. package/src/components/Removable/Removable.css +15 -19
  850. package/src/components/Removable/Removable.tsx +5 -3
  851. package/src/components/RichCell/RichCell.tsx +8 -7
  852. package/src/components/Root/Root.css +9 -14
  853. package/src/components/Root/Root.tsx +26 -21
  854. package/src/components/ScreenSpinner/ScreenSpinner.tsx +13 -13
  855. package/src/components/Search/Search.tsx +9 -14
  856. package/src/components/SimpleCell/SimpleCell.css +3 -52
  857. package/src/components/SimpleCell/SimpleCell.tsx +6 -7
  858. package/src/components/SimpleCheckbox/Readme.md +4 -0
  859. package/src/components/SimpleCheckbox/SimpleCheckbox.tsx +2 -1
  860. package/src/components/Slider/Readme.md +68 -76
  861. package/src/components/Slider/Slider.css +9 -49
  862. package/src/components/Slider/Slider.tsx +1 -4
  863. package/src/components/SliderSwitch/SliderSwitchButton.tsx +1 -1
  864. package/src/components/Snackbar/Snackbar.css +6 -2
  865. package/src/components/Spacing/Spacing.css +1 -1
  866. package/src/components/Spacing/Spacing.tsx +2 -1
  867. package/src/components/SubnavigationButton/SubnavigationButton.tsx +1 -1
  868. package/src/components/Tabbar/Tabbar.tsx +6 -9
  869. package/src/components/TabbarItem/TabbarItem.tsx +2 -5
  870. package/src/components/Tabs/Tabs.tsx +7 -10
  871. package/src/components/TabsItem/TabsItem.tsx +3 -10
  872. package/src/components/Tappable/Readme.md +53 -0
  873. package/src/components/Tappable/Tappable.css +12 -27
  874. package/src/components/Tappable/Tappable.tsx +13 -8
  875. package/src/components/Textarea/Readme.md +1 -2
  876. package/src/components/Textarea/Textarea.css +12 -8
  877. package/src/components/Textarea/Textarea.tsx +54 -55
  878. package/src/components/Tooltip/Tooltip.tsx +4 -12
  879. package/src/components/UsersStack/Readme.md +0 -1
  880. package/src/components/UsersStack/UsersStack.css +12 -30
  881. package/src/components/UsersStack/UsersStack.tsx +49 -43
  882. package/src/components/UsersStack/masks.tsx +28 -5
  883. package/src/components/View/View.css +1 -13
  884. package/src/components/View/View.tsx +39 -43
  885. package/src/components/WriteBarIcon/WriteBarIcon.tsx +1 -1
  886. package/src/index.ts +44 -44
  887. package/src/lib/animate.ts +1 -2
  888. package/src/styles/components.css +1 -1
  889. package/src/tokenized/index.ts +66 -0
  890. package/dist/cssm/components/Gallery/Gallery.css +0 -1
@@ -0,0 +1,372 @@
1
+ import _extends from "@babel/runtime/helpers/extends";
2
+ import _objectSpread from "@babel/runtime/helpers/objectSpread2";
3
+ import _slicedToArray from "@babel/runtime/helpers/slicedToArray";
4
+ import _objectWithoutProperties from "@babel/runtime/helpers/objectWithoutProperties";
5
+ var _excluded = ["bullets", "getRootRef", "children", "slideWidth", "slideIndex", "isDraggable", "onDragStart", "onDragEnd", "onChange", "onPrevClick", "onNextClick", "onEnd", "align", "showArrows", "getRef"];
6
+ import { createScopedElement } from "../../lib/jsxRuntime";
7
+ import * as React from "react";
8
+ import { classNames } from "../../lib/classNames";
9
+ import { Touch } from "../Touch/Touch";
10
+ import HorizontalScrollArrow from "../HorizontalScroll/HorizontalScrollArrow";
11
+ import { useExternRef } from "../../hooks/useExternRef";
12
+ import { useDOM } from "../../lib/dom";
13
+ import { useAdaptivity } from "../../hooks/useAdaptivity";
14
+ import { useIsomorphicLayoutEffect } from "../../lib/useIsomorphicLayoutEffect";
15
+ import { useGlobalEventListener } from "../../hooks/useGlobalEventListener";
16
+ import { calcMax, calcMin } from "./helpers";
17
+ import "./BaseGallery.css";
18
+ var ANIMATION_DURATION = 0.24;
19
+ var LAYOUT_DEFAULT_STATE = {
20
+ containerWidth: 0,
21
+ viewporOffsettWidth: 0,
22
+ layerWidth: 0,
23
+ min: 0,
24
+ max: 0,
25
+ slides: [],
26
+ isFullyVisible: true
27
+ };
28
+ var SHIFT_DEFAULT_STATE = {
29
+ animation: undefined,
30
+ shiftX: 0,
31
+ dragging: false,
32
+ deltaX: 0,
33
+ indent: 0
34
+ };
35
+ export var BaseGallery = function BaseGallery(_ref) {
36
+ var _layoutState$current$8;
37
+
38
+ var _ref$bullets = _ref.bullets,
39
+ bullets = _ref$bullets === void 0 ? false : _ref$bullets,
40
+ getRootRef = _ref.getRootRef,
41
+ children = _ref.children,
42
+ _ref$slideWidth = _ref.slideWidth,
43
+ slideWidth = _ref$slideWidth === void 0 ? "100%" : _ref$slideWidth,
44
+ _ref$slideIndex = _ref.slideIndex,
45
+ slideIndex = _ref$slideIndex === void 0 ? 0 : _ref$slideIndex,
46
+ _ref$isDraggable = _ref.isDraggable,
47
+ isDraggable = _ref$isDraggable === void 0 ? true : _ref$isDraggable,
48
+ onDragStart = _ref.onDragStart,
49
+ onDragEnd = _ref.onDragEnd,
50
+ onChange = _ref.onChange,
51
+ onPrevClick = _ref.onPrevClick,
52
+ onNextClick = _ref.onNextClick,
53
+ onEndProp = _ref.onEnd,
54
+ _ref$align = _ref.align,
55
+ align = _ref$align === void 0 ? "left" : _ref$align,
56
+ showArrows = _ref.showArrows,
57
+ getRef = _ref.getRef,
58
+ restProps = _objectWithoutProperties(_ref, _excluded);
59
+
60
+ var slidesStore = React.useRef({});
61
+ var layoutState = React.useRef(LAYOUT_DEFAULT_STATE);
62
+
63
+ var _React$useState = React.useState(SHIFT_DEFAULT_STATE),
64
+ _React$useState2 = _slicedToArray(_React$useState, 2),
65
+ shiftState = _React$useState2[0],
66
+ setShiftState = _React$useState2[1];
67
+
68
+ var rootRef = useExternRef(getRootRef);
69
+ var viewportRef = useExternRef(getRef);
70
+
71
+ var _useDOM = useDOM(),
72
+ window = _useDOM.window;
73
+
74
+ var _useAdaptivity = useAdaptivity(),
75
+ hasMouse = _useAdaptivity.hasMouse;
76
+
77
+ var isCenterWithCustomWidth = slideWidth === "custom" && align === "center";
78
+
79
+ var validateIndent = function validateIndent(value) {
80
+ var _layoutState$current$, _layoutState$current$2;
81
+
82
+ var localMax = (_layoutState$current$ = layoutState.current.max) !== null && _layoutState$current$ !== void 0 ? _layoutState$current$ : 0;
83
+ var localMin = (_layoutState$current$2 = layoutState.current.min) !== null && _layoutState$current$2 !== void 0 ? _layoutState$current$2 : 0;
84
+
85
+ if (value < localMin) {
86
+ return localMin;
87
+ } else if (value > localMax) {
88
+ return localMax;
89
+ }
90
+
91
+ return value;
92
+ };
93
+ /*
94
+ * Считает отступ слоя галереи
95
+ */
96
+
97
+
98
+ var calculateIndent = function calculateIndent(targetIndex) {
99
+ var _layoutState$current$3;
100
+
101
+ if (layoutState.current.isFullyVisible) {
102
+ return 0;
103
+ }
104
+
105
+ var targetSlide = (_layoutState$current$3 = layoutState.current.slides) !== null && _layoutState$current$3 !== void 0 && _layoutState$current$3.length ? layoutState.current.slides[targetIndex] : null;
106
+
107
+ if (targetSlide) {
108
+ var coordX = targetSlide.coordX,
109
+ width = targetSlide.width;
110
+
111
+ if (isCenterWithCustomWidth) {
112
+ var _layoutState$current$4;
113
+
114
+ var viewportWidth = (_layoutState$current$4 = layoutState.current.viewporOffsettWidth) !== null && _layoutState$current$4 !== void 0 ? _layoutState$current$4 : 0;
115
+ return viewportWidth / 2 - coordX - width / 2;
116
+ }
117
+
118
+ return validateIndent(-1 * coordX);
119
+ }
120
+
121
+ return 0;
122
+ };
123
+ /*
124
+ * Считает отступ слоя галереи во время драга
125
+ */
126
+
127
+
128
+ var calculateDragIndent = function calculateDragIndent() {
129
+ var _layoutState$current$5, _layoutState$current$6;
130
+
131
+ var localMax = (_layoutState$current$5 = layoutState.current.max) !== null && _layoutState$current$5 !== void 0 ? _layoutState$current$5 : 0;
132
+ var localMin = (_layoutState$current$6 = layoutState.current.min) !== null && _layoutState$current$6 !== void 0 ? _layoutState$current$6 : 0;
133
+ var indent = shiftState.shiftX + shiftState.deltaX;
134
+
135
+ if (indent > localMax) {
136
+ return localMax + Number((indent - localMax) / 3);
137
+ } else if (indent < localMin) {
138
+ return localMin + Number((indent - localMin) / 3);
139
+ }
140
+
141
+ return indent;
142
+ };
143
+
144
+ var initializeSlides = function initializeSlides() {
145
+ var _React$Children$map, _rootRef$current$offs, _rootRef$current, _viewportRef$current$, _viewportRef$current;
146
+
147
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
148
+ var localSlides = (_React$Children$map = React.Children.map(children, function (_item, i) {
149
+ var _elem$offsetLeft, _elem$offsetWidth;
150
+
151
+ var elem = slidesStore.current["slide-".concat(i)];
152
+ return {
153
+ coordX: (_elem$offsetLeft = elem === null || elem === void 0 ? void 0 : elem.offsetLeft) !== null && _elem$offsetLeft !== void 0 ? _elem$offsetLeft : 0,
154
+ width: (_elem$offsetWidth = elem === null || elem === void 0 ? void 0 : elem.offsetWidth) !== null && _elem$offsetWidth !== void 0 ? _elem$offsetWidth : 0
155
+ };
156
+ })) !== null && _React$Children$map !== void 0 ? _React$Children$map : [];
157
+ var localContainerWidth = (_rootRef$current$offs = (_rootRef$current = rootRef.current) === null || _rootRef$current === void 0 ? void 0 : _rootRef$current.offsetWidth) !== null && _rootRef$current$offs !== void 0 ? _rootRef$current$offs : 0;
158
+ var localViewporOffsettWidth = (_viewportRef$current$ = (_viewportRef$current = viewportRef.current) === null || _viewportRef$current === void 0 ? void 0 : _viewportRef$current.offsetWidth) !== null && _viewportRef$current$ !== void 0 ? _viewportRef$current$ : 0;
159
+ var localLayerWidth = localSlides.reduce(function (val, slide) {
160
+ return slide.width + val;
161
+ }, 0);
162
+ layoutState.current = {
163
+ containerWidth: localContainerWidth,
164
+ viewporOffsettWidth: localViewporOffsettWidth,
165
+ layerWidth: localLayerWidth,
166
+ max: calcMax({
167
+ slides: localSlides,
168
+ viewporOffsettWidth: localViewporOffsettWidth,
169
+ isCenterWithCustomWidth: isCenterWithCustomWidth
170
+ }),
171
+ min: calcMin({
172
+ containerWidth: localContainerWidth,
173
+ layerWidth: localLayerWidth,
174
+ slides: localSlides,
175
+ viewporOffsettWidth: localViewporOffsettWidth,
176
+ isCenterWithCustomWidth: isCenterWithCustomWidth,
177
+ align: align
178
+ }),
179
+ slides: localSlides,
180
+ isFullyVisible: localLayerWidth <= localContainerWidth
181
+ };
182
+ setShiftState(function (prevState) {
183
+ var _options$animation;
184
+
185
+ return _objectSpread(_objectSpread({}, prevState), {}, {
186
+ shiftX: calculateIndent(slideIndex),
187
+ animation: (_options$animation = options.animation) !== null && _options$animation !== void 0 ? _options$animation : prevState.shiftX === validateIndent(prevState.shiftX)
188
+ });
189
+ });
190
+ };
191
+
192
+ var onResize = function onResize() {
193
+ if (shiftState.animation !== undefined) {
194
+ initializeSlides({
195
+ animation: false
196
+ });
197
+ }
198
+ };
199
+
200
+ useGlobalEventListener(window, "resize", onResize);
201
+ useIsomorphicLayoutEffect(function () {
202
+ initializeSlides({
203
+ animation: false
204
+ });
205
+ }, [children, align, slideWidth]);
206
+ useIsomorphicLayoutEffect(function () {
207
+ if (shiftState.animation !== undefined) {
208
+ setShiftState(function (prevState) {
209
+ return _objectSpread(_objectSpread({}, prevState), {}, {
210
+ animation: true,
211
+ deltaX: 0,
212
+ shiftX: calculateIndent(slideIndex !== null && slideIndex !== void 0 ? slideIndex : 0)
213
+ });
214
+ });
215
+ }
216
+ }, [slideIndex]);
217
+
218
+ var slideLeft = function slideLeft() {
219
+ onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex - 1);
220
+ onPrevClick === null || onPrevClick === void 0 ? void 0 : onPrevClick();
221
+ };
222
+
223
+ var slideRight = function slideRight() {
224
+ onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex + 1);
225
+ onNextClick === null || onNextClick === void 0 ? void 0 : onNextClick();
226
+ };
227
+ /*
228
+ * Получает индекс слайда, к которому будет осуществлен переход
229
+ */
230
+
231
+
232
+ var getTarget = function getTarget(e) {
233
+ var _layoutState$current$7;
234
+
235
+ var expectDeltaX = shiftState.deltaX / e.duration * 240 * 0.6;
236
+ var shift = shiftState.shiftX + shiftState.deltaX + expectDeltaX - ((_layoutState$current$7 = layoutState.current.max) !== null && _layoutState$current$7 !== void 0 ? _layoutState$current$7 : 0);
237
+ var direction = shiftState.deltaX < 0 ? 1 : -1; // Находим ближайшую границу слайда к текущему отступу
238
+
239
+ var targetIndex = layoutState.current.slides.reduce(function (val, item, index) {
240
+ var previousValue = Math.abs(layoutState.current.slides[val].coordX + shift);
241
+ var currentValue = Math.abs(item.coordX + shift);
242
+ return previousValue < currentValue ? val : index;
243
+ }, slideIndex);
244
+
245
+ if (targetIndex === slideIndex) {
246
+ var targetSlide = slideIndex + direction;
247
+
248
+ if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {
249
+ if (Math.abs(shiftState.deltaX) > layoutState.current.slides[targetSlide].width * 0.05) {
250
+ targetIndex = targetSlide;
251
+ }
252
+ }
253
+ }
254
+
255
+ return targetIndex;
256
+ };
257
+
258
+ var onStart = function onStart() {
259
+ setShiftState(function (prevState) {
260
+ return _objectSpread(_objectSpread({}, prevState), {}, {
261
+ animation: false
262
+ });
263
+ });
264
+ };
265
+
266
+ var onMoveX = function onMoveX(e) {
267
+ if (isDraggable && !layoutState.current.isFullyVisible) {
268
+ e.originalEvent.preventDefault();
269
+
270
+ if (e.isSlideX) {
271
+ // TODO исправить в рамках issue #2698
272
+ onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(e);
273
+
274
+ if (shiftState.deltaX !== e.shiftX) {
275
+ setShiftState(function (prevState) {
276
+ return _objectSpread(_objectSpread({}, prevState), {}, {
277
+ deltaX: e.shiftX,
278
+ dragging: e.isSlideX
279
+ });
280
+ });
281
+ }
282
+ }
283
+ }
284
+ };
285
+
286
+ var onEnd = function onEnd(e) {
287
+ var targetIndex = e.isSlide ? getTarget(e) : slideIndex !== null && slideIndex !== void 0 ? slideIndex : 0;
288
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(e);
289
+ var nextShiftState = {
290
+ animation: true,
291
+ dragging: false,
292
+ deltaX: 0
293
+ };
294
+ var shiftXStick = calculateDragIndent();
295
+
296
+ if (targetIndex !== slideIndex) {
297
+ // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)
298
+ nextShiftState.shiftX = shiftXStick;
299
+ }
300
+
301
+ setShiftState(function (prevState) {
302
+ return _objectSpread(_objectSpread({}, prevState), nextShiftState);
303
+ });
304
+
305
+ if (targetIndex !== slideIndex) {
306
+ onChange === null || onChange === void 0 ? void 0 : onChange(targetIndex);
307
+ } // TODO исправить в рамках issue #2698
308
+
309
+
310
+ onEndProp === null || onEndProp === void 0 ? void 0 : onEndProp({
311
+ targetIndex: targetIndex
312
+ });
313
+ };
314
+
315
+ var indent = shiftState.dragging ? calculateDragIndent() : shiftState.shiftX;
316
+ var layerStyle = {
317
+ WebkitTransform: "translateX(".concat(indent, "px)"),
318
+ transform: "translateX(".concat(indent, "px)"),
319
+ WebkitTransition: shiftState.animation ? "-webkit-transform ".concat(ANIMATION_DURATION, "s cubic-bezier(.1, 0, .25, 1)") : "none",
320
+ transition: shiftState.animation ? "transform ".concat(ANIMATION_DURATION, "s cubic-bezier(.1, 0, .25, 1)") : "none"
321
+ };
322
+
323
+ var setSlideRef = function setSlideRef(slideRef, slideIndex) {
324
+ slidesStore.current["slide-".concat(slideIndex)] = slideRef;
325
+ }; // shiftX is negative number <= 0, we can swipe back only if it is < 0
326
+
327
+
328
+ var canSlideLeft = !layoutState.current.isFullyVisible && shiftState.shiftX < 0;
329
+ var canSlideRight = !layoutState.current.isFullyVisible && ( // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side
330
+ align === "left" && layoutState.current.containerWidth - shiftState.shiftX < ((_layoutState$current$8 = layoutState.current.layerWidth) !== null && _layoutState$current$8 !== void 0 ? _layoutState$current$8 : 0) || // otherwise we need to check current slide index (align = right or align = center)
331
+ align !== "left" && slideIndex < layoutState.current.slides.length - 1);
332
+ return createScopedElement("div", _extends({}, restProps, {
333
+ vkuiClass: classNames("Gallery", "Gallery--".concat(align), shiftState.dragging && "Gallery--dragging", slideWidth === "custom" && "Gallery--custom-width"),
334
+ ref: rootRef
335
+ }), createScopedElement(Touch, {
336
+ vkuiClass: "Gallery__viewport",
337
+ onStartX: onStart,
338
+ onMoveX: onMoveX,
339
+ onEnd: onEnd,
340
+ style: {
341
+ width: slideWidth === "custom" ? "100%" : slideWidth
342
+ },
343
+ getRootRef: viewportRef,
344
+ noSlideClick: true
345
+ }, createScopedElement("div", {
346
+ vkuiClass: "Gallery__layer",
347
+ style: layerStyle
348
+ }, React.Children.map(children, function (item, i) {
349
+ return createScopedElement("div", {
350
+ vkuiClass: "Gallery__slide",
351
+ key: "slide-".concat(i),
352
+ ref: function ref(el) {
353
+ return setSlideRef(el, i);
354
+ }
355
+ }, item);
356
+ }))), bullets && createScopedElement("div", {
357
+ "aria-hidden": "true",
358
+ vkuiClass: classNames("Gallery__bullets", "Gallery__bullets--".concat(bullets))
359
+ }, React.Children.map(children, function (_item, index) {
360
+ return createScopedElement("div", {
361
+ vkuiClass: classNames("Gallery__bullet", index === slideIndex && "Gallery__bullet--active"),
362
+ key: index
363
+ });
364
+ })), showArrows && hasMouse && canSlideLeft && createScopedElement(HorizontalScrollArrow, {
365
+ direction: "left",
366
+ onClick: slideLeft
367
+ }), showArrows && hasMouse && canSlideRight && createScopedElement(HorizontalScrollArrow, {
368
+ direction: "right",
369
+ onClick: slideRight
370
+ }));
371
+ };
372
+ //# sourceMappingURL=BaseGallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"names":["React","classNames","Touch","HorizontalScrollArrow","useExternRef","useDOM","useAdaptivity","useIsomorphicLayoutEffect","useGlobalEventListener","calcMax","calcMin","ANIMATION_DURATION","LAYOUT_DEFAULT_STATE","containerWidth","viewporOffsettWidth","layerWidth","min","max","slides","isFullyVisible","SHIFT_DEFAULT_STATE","animation","undefined","shiftX","dragging","deltaX","indent","BaseGallery","bullets","getRootRef","children","slideWidth","slideIndex","isDraggable","onDragStart","onDragEnd","onChange","onPrevClick","onNextClick","onEndProp","onEnd","align","showArrows","getRef","restProps","slidesStore","useRef","layoutState","useState","shiftState","setShiftState","rootRef","viewportRef","window","hasMouse","isCenterWithCustomWidth","validateIndent","value","localMax","current","localMin","calculateIndent","targetIndex","targetSlide","length","coordX","width","viewportWidth","calculateDragIndent","Number","initializeSlides","options","localSlides","Children","map","_item","i","elem","offsetLeft","offsetWidth","localContainerWidth","localViewporOffsettWidth","localLayerWidth","reduce","val","slide","prevState","onResize","slideLeft","slideRight","getTarget","e","expectDeltaX","duration","shift","direction","item","index","previousValue","Math","abs","currentValue","onStart","onMoveX","originalEvent","preventDefault","isSlideX","isSlide","nextShiftState","shiftXStick","layerStyle","WebkitTransform","transform","WebkitTransition","transition","setSlideRef","slideRef","canSlideLeft","canSlideRight","el"],"mappings":";;;;;;AAAA,OAAO,KAAKA,KAAZ,MAAuB,OAAvB;AACA,SAASC,UAAT;AACA,SAASC,KAAT;AACA,OAAOC,qBAAP;AACA,SAASC,YAAT;AACA,SAASC,MAAT;AACA,SAASC,aAAT;AACA,SAASC,yBAAT;AACA,SAASC,sBAAT;AACA,SAASC,OAAT,EAAkBC,OAAlB;AAOA;AAEA,IAAMC,kBAAkB,GAAG,IAA3B;AAEA,IAAMC,oBAAoB,GAAG;AAC3BC,EAAAA,cAAc,EAAE,CADW;AAE3BC,EAAAA,mBAAmB,EAAE,CAFM;AAG3BC,EAAAA,UAAU,EAAE,CAHe;AAI3BC,EAAAA,GAAG,EAAE,CAJsB;AAK3BC,EAAAA,GAAG,EAAE,CALsB;AAM3BC,EAAAA,MAAM,EAAE,EANmB;AAO3BC,EAAAA,cAAc,EAAE;AAPW,CAA7B;AAUA,IAAMC,mBAAmB,GAAG;AAC1BC,EAAAA,SAAS,EAAEC,SADe;AAE1BC,EAAAA,MAAM,EAAE,CAFkB;AAG1BC,EAAAA,QAAQ,EAAE,KAHgB;AAI1BC,EAAAA,MAAM,EAAE,CAJkB;AAK1BC,EAAAA,MAAM,EAAE;AALkB,CAA5B;AAQA,OAAO,IAAMC,WAAW,GAAG,SAAdA,WAAc,OAiBH;AAAA;;AAAA,0BAhBtBC,OAgBsB;AAAA,MAhBtBA,OAgBsB,6BAhBZ,KAgBY;AAAA,MAftBC,UAesB,QAftBA,UAesB;AAAA,MAdtBC,QAcsB,QAdtBA,QAcsB;AAAA,6BAbtBC,UAasB;AAAA,MAbtBA,UAasB,gCAbT,MAaS;AAAA,6BAZtBC,UAYsB;AAAA,MAZtBA,UAYsB,gCAZT,CAYS;AAAA,8BAXtBC,WAWsB;AAAA,MAXtBA,WAWsB,iCAXR,IAWQ;AAAA,MAVtBC,WAUsB,QAVtBA,WAUsB;AAAA,MATtBC,SASsB,QATtBA,SASsB;AAAA,MARtBC,QAQsB,QARtBA,QAQsB;AAAA,MAPtBC,WAOsB,QAPtBA,WAOsB;AAAA,MANtBC,WAMsB,QANtBA,WAMsB;AAAA,MALfC,SAKe,QALtBC,KAKsB;AAAA,wBAJtBC,KAIsB;AAAA,MAJtBA,KAIsB,2BAJd,MAIc;AAAA,MAHtBC,UAGsB,QAHtBA,UAGsB;AAAA,MAFtBC,MAEsB,QAFtBA,MAEsB;AAAA,MADnBC,SACmB;;AACtB,MAAMC,WAAW,GAAG7C,KAAK,CAAC8C,MAAN,CAAoD,EAApD,CAApB;AACA,MAAMC,WAAW,GAAG/C,KAAK,CAAC8C,MAAN,CAA0BlC,oBAA1B,CAApB;;AACA,wBACEZ,KAAK,CAACgD,QAAN,CAA8B5B,mBAA9B,CADF;AAAA;AAAA,MAAO6B,UAAP;AAAA,MAAmBC,aAAnB;;AAGA,MAAMC,OAAO,GAAG/C,YAAY,CAACyB,UAAD,CAA5B;AACA,MAAMuB,WAAW,GAAGhD,YAAY,CAACuC,MAAD,CAAhC;;AAEA,gBAAmBtC,MAAM,EAAzB;AAAA,MAAQgD,MAAR,WAAQA,MAAR;;AACA,uBAAqB/C,aAAa,EAAlC;AAAA,MAAQgD,QAAR,kBAAQA,QAAR;;AAEA,MAAMC,uBAAuB,GAAGxB,UAAU,KAAK,QAAf,IAA2BU,KAAK,KAAK,QAArE;;AAEA,MAAMe,cAAc,GAAG,SAAjBA,cAAiB,CAACC,KAAD,EAAmB;AAAA;;AACxC,QAAMC,QAAQ,4BAAGX,WAAW,CAACY,OAAZ,CAAoB1C,GAAvB,yEAA8B,CAA5C;AACA,QAAM2C,QAAQ,6BAAGb,WAAW,CAACY,OAAZ,CAAoB3C,GAAvB,2EAA8B,CAA5C;;AAEA,QAAIyC,KAAK,GAAGG,QAAZ,EAAsB;AACpB,aAAOA,QAAP;AACD,KAFD,MAEO,IAAIH,KAAK,GAAGC,QAAZ,EAAsB;AAC3B,aAAOA,QAAP;AACD;;AAED,WAAOD,KAAP;AACD,GAXD;AAaA;AACF;AACA;;;AACE,MAAMI,eAAe,GAAG,SAAlBA,eAAkB,CAACC,WAAD,EAAyB;AAAA;;AAC/C,QAAIf,WAAW,CAACY,OAAZ,CAAoBxC,cAAxB,EAAwC;AACtC,aAAO,CAAP;AACD;;AAED,QAAM4C,WAAW,GAAG,0BAAAhB,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,0EAA4B8C,MAA5B,GAChBjB,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2B4C,WAA3B,CADgB,GAEhB,IAFJ;;AAIA,QAAIC,WAAJ,EAAiB;AACf,UAAQE,MAAR,GAA0BF,WAA1B,CAAQE,MAAR;AAAA,UAAgBC,KAAhB,GAA0BH,WAA1B,CAAgBG,KAAhB;;AAEA,UAAIX,uBAAJ,EAA6B;AAAA;;AAC3B,YAAMY,aAAa,6BAAGpB,WAAW,CAACY,OAAZ,CAAoB7C,mBAAvB,2EAA8C,CAAjE;AACA,eAAOqD,aAAa,GAAG,CAAhB,GAAoBF,MAApB,GAA6BC,KAAK,GAAG,CAA5C;AACD;;AAED,aAAOV,cAAc,CAAC,CAAC,CAAD,GAAKS,MAAN,CAArB;AACD;;AAED,WAAO,CAAP;AACD,GArBD;AAuBA;AACF;AACA;;;AACE,MAAMG,mBAAmB,GAAG,SAAtBA,mBAAsB,GAAM;AAAA;;AAChC,QAAMV,QAAQ,6BAAGX,WAAW,CAACY,OAAZ,CAAoB1C,GAAvB,2EAA8B,CAA5C;AACA,QAAM2C,QAAQ,6BAAGb,WAAW,CAACY,OAAZ,CAAoB3C,GAAvB,2EAA8B,CAA5C;AACA,QAAMU,MAAM,GAAGuB,UAAU,CAAC1B,MAAX,GAAoB0B,UAAU,CAACxB,MAA9C;;AAEA,QAAIC,MAAM,GAAGgC,QAAb,EAAuB;AACrB,aAAOA,QAAQ,GAAGW,MAAM,CAAC,CAAC3C,MAAM,GAAGgC,QAAV,IAAsB,CAAvB,CAAxB;AACD,KAFD,MAEO,IAAIhC,MAAM,GAAGkC,QAAb,EAAuB;AAC5B,aAAOA,QAAQ,GAAGS,MAAM,CAAC,CAAC3C,MAAM,GAAGkC,QAAV,IAAsB,CAAvB,CAAxB;AACD;;AAED,WAAOlC,MAAP;AACD,GAZD;;AAcA,MAAM4C,gBAAgB,GAAG,SAAnBA,gBAAmB,GAA2C;AAAA;;AAAA,QAA1CC,OAA0C,uEAAP,EAAO;AAClE,QAAMC,WAAW,0BACfxE,KAAK,CAACyE,QAAN,CAAeC,GAAf,CACE5C,QADF,EAEE,UAAC6C,KAAD,EAAyBC,CAAzB,EAA2D;AAAA;;AACzD,UAAMC,IAAI,GAAGhC,WAAW,CAACc,OAAZ,iBAA6BiB,CAA7B,EAAb;AACA,aAAO;AACLX,QAAAA,MAAM,sBAAEY,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEC,UAAR,+DAAsB,CADvB;AAELZ,QAAAA,KAAK,uBAAEW,IAAF,aAAEA,IAAF,uBAAEA,IAAI,CAAEE,WAAR,iEAAuB;AAFvB,OAAP;AAID,KARH,CADe,qEAUV,EAVP;AAYA,QAAMC,mBAAmB,gDAAG7B,OAAO,CAACQ,OAAX,qDAAG,iBAAiBoB,WAApB,yEAAmC,CAA5D;AACA,QAAME,wBAAwB,oDAAG7B,WAAW,CAACO,OAAf,yDAAG,qBAAqBoB,WAAxB,yEAAuC,CAArE;AACA,QAAMG,eAAe,GAAGV,WAAW,CAACW,MAAZ,CACtB,UAACC,GAAD,EAAcC,KAAd;AAAA,aAA4CA,KAAK,CAACnB,KAAN,GAAckB,GAA1D;AAAA,KADsB,EAEtB,CAFsB,CAAxB;AAKArC,IAAAA,WAAW,CAACY,OAAZ,GAAsB;AACpB9C,MAAAA,cAAc,EAAEmE,mBADI;AAEpBlE,MAAAA,mBAAmB,EAAEmE,wBAFD;AAGpBlE,MAAAA,UAAU,EAAEmE,eAHQ;AAIpBjE,MAAAA,GAAG,EAAER,OAAO,CAAC;AACXS,QAAAA,MAAM,EAAEsD,WADG;AAEX1D,QAAAA,mBAAmB,EAAEmE,wBAFV;AAGX1B,QAAAA,uBAAuB,EAAvBA;AAHW,OAAD,CAJQ;AASpBvC,MAAAA,GAAG,EAAEN,OAAO,CAAC;AACXG,QAAAA,cAAc,EAAEmE,mBADL;AAEXjE,QAAAA,UAAU,EAAEmE,eAFD;AAGXhE,QAAAA,MAAM,EAAEsD,WAHG;AAIX1D,QAAAA,mBAAmB,EAAEmE,wBAJV;AAKX1B,QAAAA,uBAAuB,EAAvBA,uBALW;AAMXd,QAAAA,KAAK,EAALA;AANW,OAAD,CATQ;AAiBpBvB,MAAAA,MAAM,EAAEsD,WAjBY;AAkBpBrD,MAAAA,cAAc,EAAE+D,eAAe,IAAIF;AAlBf,KAAtB;AAqBA9B,IAAAA,aAAa,CAAC,UAACoC,SAAD;AAAA;;AAAA,6CACTA,SADS;AAEZ/D,QAAAA,MAAM,EAAEsC,eAAe,CAAC7B,UAAD,CAFX;AAGZX,QAAAA,SAAS,wBACPkD,OAAO,CAAClD,SADD,mEAEPiE,SAAS,CAAC/D,MAAV,KAAqBiC,cAAc,CAAC8B,SAAS,CAAC/D,MAAX;AALzB;AAAA,KAAD,CAAb;AAOD,GAhDD;;AAkDA,MAAMgE,QAAQ,GAAG,SAAXA,QAAW,GAAM;AACrB,QAAItC,UAAU,CAAC5B,SAAX,KAAyBC,SAA7B,EAAwC;AACtCgD,MAAAA,gBAAgB,CAAC;AAAEjD,QAAAA,SAAS,EAAE;AAAb,OAAD,CAAhB;AACD;AACF,GAJD;;AAMAb,EAAAA,sBAAsB,CAAC6C,MAAD,EAAS,QAAT,EAAmBkC,QAAnB,CAAtB;AAEAhF,EAAAA,yBAAyB,CAAC,YAAM;AAC9B+D,IAAAA,gBAAgB,CAAC;AAAEjD,MAAAA,SAAS,EAAE;AAAb,KAAD,CAAhB;AACD,GAFwB,EAEtB,CAACS,QAAD,EAAWW,KAAX,EAAkBV,UAAlB,CAFsB,CAAzB;AAIAxB,EAAAA,yBAAyB,CAAC,YAAM;AAC9B,QAAI0C,UAAU,CAAC5B,SAAX,KAAyBC,SAA7B,EAAwC;AACtC4B,MAAAA,aAAa,CAAC,UAACoC,SAAD;AAAA,+CACTA,SADS;AAEZjE,UAAAA,SAAS,EAAE,IAFC;AAGZI,UAAAA,MAAM,EAAE,CAHI;AAIZF,UAAAA,MAAM,EAAEsC,eAAe,CAAC7B,UAAD,aAACA,UAAD,cAACA,UAAD,GAAe,CAAf;AAJX;AAAA,OAAD,CAAb;AAMD;AACF,GATwB,EAStB,CAACA,UAAD,CATsB,CAAzB;;AAWA,MAAMwD,SAAS,GAAG,SAAZA,SAAY,GAAM;AACtBpD,IAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAGJ,UAAU,GAAG,CAAhB,CAAR;AACAK,IAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW;AACZ,GAHD;;AAKA,MAAMoD,UAAU,GAAG,SAAbA,UAAa,GAAM;AACvBrD,IAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAGJ,UAAU,GAAG,CAAhB,CAAR;AACAM,IAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW;AACZ,GAHD;AAKA;AACF;AACA;;;AACE,MAAMoD,SAAS,GAAG,SAAZA,SAAY,CAACC,CAAD,EAAmB;AAAA;;AACnC,QAAMC,YAAY,GAAI3C,UAAU,CAACxB,MAAX,GAAoBkE,CAAC,CAACE,QAAvB,GAAmC,GAAnC,GAAyC,GAA9D;AACA,QAAMC,KAAK,GACT7C,UAAU,CAAC1B,MAAX,GACA0B,UAAU,CAACxB,MADX,GAEAmE,YAFA,8BAGC7C,WAAW,CAACY,OAAZ,CAAoB1C,GAHrB,2EAG4B,CAH5B,CADF;AAKA,QAAM8E,SAAS,GAAG9C,UAAU,CAACxB,MAAX,GAAoB,CAApB,GAAwB,CAAxB,GAA4B,CAAC,CAA/C,CAPmC,CASnC;;AACA,QAAIqC,WAAW,GAAGf,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2BiE,MAA3B,CAChB,UAACC,GAAD,EAAcY,IAAd,EAAwCC,KAAxC,EAA0D;AACxD,UAAMC,aAAa,GAAGC,IAAI,CAACC,GAAL,CACpBrD,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2BkE,GAA3B,EAAgCnB,MAAhC,GAAyC6B,KADrB,CAAtB;AAGA,UAAMO,YAAY,GAAGF,IAAI,CAACC,GAAL,CAASJ,IAAI,CAAC/B,MAAL,GAAc6B,KAAvB,CAArB;AAEA,aAAOI,aAAa,GAAGG,YAAhB,GAA+BjB,GAA/B,GAAqCa,KAA5C;AACD,KARe,EAShBjE,UATgB,CAAlB;;AAYA,QAAI8B,WAAW,KAAK9B,UAApB,EAAgC;AAC9B,UAAI+B,WAAW,GAAG/B,UAAU,GAAG+D,SAA/B;;AAEA,UAAIhC,WAAW,IAAI,CAAf,IAAoBA,WAAW,GAAGhB,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2B8C,MAAjE,EAAyE;AACvE,YACEmC,IAAI,CAACC,GAAL,CAASnD,UAAU,CAACxB,MAApB,IACAsB,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2B6C,WAA3B,EAAwCG,KAAxC,GAAgD,IAFlD,EAGE;AACAJ,UAAAA,WAAW,GAAGC,WAAd;AACD;AACF;AACF;;AAED,WAAOD,WAAP;AACD,GApCD;;AAsCA,MAAMwC,OAAO,GAAG,SAAVA,OAAU,GAAM;AACpBpD,IAAAA,aAAa,CAAC,UAACoC,SAAD;AAAA,6CAAqBA,SAArB;AAAgCjE,QAAAA,SAAS,EAAE;AAA3C;AAAA,KAAD,CAAb;AACD,GAFD;;AAIA,MAAMkF,OAAO,GAAG,SAAVA,OAAU,CAACZ,CAAD,EAAmB;AACjC,QAAI1D,WAAW,IAAI,CAACc,WAAW,CAACY,OAAZ,CAAoBxC,cAAxC,EAAwD;AACtDwE,MAAAA,CAAC,CAACa,aAAF,CAAgBC,cAAhB;;AAEA,UAAId,CAAC,CAACe,QAAN,EAAgB;AACd;AACAxE,QAAAA,WAAW,SAAX,IAAAA,WAAW,WAAX,YAAAA,WAAW,CAAGyD,CAAH,CAAX;;AAEA,YAAI1C,UAAU,CAACxB,MAAX,KAAsBkE,CAAC,CAACpE,MAA5B,EAAoC;AAClC2B,UAAAA,aAAa,CAAC,UAACoC,SAAD;AAAA,mDACTA,SADS;AAEZ7D,cAAAA,MAAM,EAAEkE,CAAC,CAACpE,MAFE;AAGZC,cAAAA,QAAQ,EAAEmE,CAAC,CAACe;AAHA;AAAA,WAAD,CAAb;AAKD;AACF;AACF;AACF,GAjBD;;AAmBA,MAAMlE,KAAK,GAAG,SAARA,KAAQ,CAACmD,CAAD,EAAmB;AAC/B,QAAM7B,WAAW,GAAG6B,CAAC,CAACgB,OAAF,GAAYjB,SAAS,CAACC,CAAD,CAArB,GAA2B3D,UAA3B,aAA2BA,UAA3B,cAA2BA,UAA3B,GAAyC,CAA7D;AACAG,IAAAA,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAGwD,CAAH,CAAT;AAEA,QAAMiB,cAAsC,GAAG;AAC7CvF,MAAAA,SAAS,EAAE,IADkC;AAE7CG,MAAAA,QAAQ,EAAE,KAFmC;AAG7CC,MAAAA,MAAM,EAAE;AAHqC,KAA/C;AAMA,QAAMoF,WAAW,GAAGzC,mBAAmB,EAAvC;;AACA,QAAIN,WAAW,KAAK9B,UAApB,EAAgC;AAC9B;AACA4E,MAAAA,cAAc,CAACrF,MAAf,GAAwBsF,WAAxB;AACD;;AAED3D,IAAAA,aAAa,CAAC,UAACoC,SAAD;AAAA,6CAAqBA,SAArB,GAAmCsB,cAAnC;AAAA,KAAD,CAAb;;AACA,QAAI9C,WAAW,KAAK9B,UAApB,EAAgC;AAC9BI,MAAAA,QAAQ,SAAR,IAAAA,QAAQ,WAAR,YAAAA,QAAQ,CAAG0B,WAAH,CAAR;AACD,KAnB8B,CAqB/B;;;AACAvB,IAAAA,SAAS,SAAT,IAAAA,SAAS,WAAT,YAAAA,SAAS,CAAG;AAAEuB,MAAAA,WAAW,EAAXA;AAAF,KAAH,CAAT;AACD,GAvBD;;AAyBA,MAAMpC,MAAM,GAAGuB,UAAU,CAACzB,QAAX,GACX4C,mBAAmB,EADR,GAEXnB,UAAU,CAAC1B,MAFf;AAIA,MAAMuF,UAAU,GAAG;AACjBC,IAAAA,eAAe,uBAAgBrF,MAAhB,QADE;AAEjBsF,IAAAA,SAAS,uBAAgBtF,MAAhB,QAFQ;AAGjBuF,IAAAA,gBAAgB,EAAEhE,UAAU,CAAC5B,SAAX,+BACOV,kBADP,qCAEd,MALa;AAMjBuG,IAAAA,UAAU,EAAEjE,UAAU,CAAC5B,SAAX,uBACKV,kBADL,qCAER;AARa,GAAnB;;AAWA,MAAMwG,WAAW,GAAG,SAAdA,WAAc,CAACC,QAAD,EAAkCpF,UAAlC,EAAyD;AAC3Ea,IAAAA,WAAW,CAACc,OAAZ,iBAA6B3B,UAA7B,KAA6CoF,QAA7C;AACD,GAFD,CAjQsB,CAqQtB;;;AACA,MAAMC,YAAY,GAChB,CAACtE,WAAW,CAACY,OAAZ,CAAoBxC,cAArB,IAAuC8B,UAAU,CAAC1B,MAAX,GAAoB,CAD7D;AAGA,MAAM+F,aAAa,GACjB,CAACvE,WAAW,CAACY,OAAZ,CAAoBxC,cAArB,MACA;AACEsB,EAAAA,KAAK,KAAK,MAAV,IACAM,WAAW,CAACY,OAAZ,CAAoB9C,cAApB,GAAqCoC,UAAU,CAAC1B,MAAhD,8BACGwB,WAAW,CAACY,OAAZ,CAAoB5C,UADvB,2EACqC,CADrC,CADD,IAGC;AACC0B,EAAAA,KAAK,KAAK,MAAV,IAAoBT,UAAU,GAAGe,WAAW,CAACY,OAAZ,CAAoBzC,MAApB,CAA2B8C,MAA3B,GAAoC,CANxE,CADF;AASA,SACE,wCACMpB,SADN;AAEE,IAAA,SAAS,EAAE3C,UAAU,CACnB,SADmB,qBAEPwC,KAFO,GAGnBQ,UAAU,CAACzB,QAAX,IAAuB,mBAHJ,EAInBO,UAAU,KAAK,QAAf,IAA2B,uBAJR,CAFvB;AAQE,IAAA,GAAG,EAAEoB;AARP,MAUE,oBAAC,KAAD;AACE,IAAA,SAAS,EAAC,mBADZ;AAEE,IAAA,QAAQ,EAAEmD,OAFZ;AAGE,IAAA,OAAO,EAAEC,OAHX;AAIE,IAAA,KAAK,EAAE/D,KAJT;AAKE,IAAA,KAAK,EAAE;AAAE0B,MAAAA,KAAK,EAAEnC,UAAU,KAAK,QAAf,GAA0B,MAA1B,GAAmCA;AAA5C,KALT;AAME,IAAA,UAAU,EAAEqB,WANd;AAOE,IAAA,YAAY;AAPd,KASE;AAAK,IAAA,SAAS,EAAC,gBAAf;AAAgC,IAAA,KAAK,EAAE0D;AAAvC,KACG9G,KAAK,CAACyE,QAAN,CAAeC,GAAf,CAAmB5C,QAAnB,EAA6B,UAACkE,IAAD,EAAwBpB,CAAxB;AAAA,WAC5B;AACE,MAAA,SAAS,EAAC,gBADZ;AAEE,MAAA,GAAG,kBAAWA,CAAX,CAFL;AAGE,MAAA,GAAG,EAAE,aAAC2C,EAAD;AAAA,eAAQJ,WAAW,CAACI,EAAD,EAAK3C,CAAL,CAAnB;AAAA;AAHP,OAKGoB,IALH,CAD4B;AAAA,GAA7B,CADH,CATF,CAVF,EAgCGpE,OAAO,IACN;AACE,mBAAY,MADd;AAEE,IAAA,SAAS,EAAE3B,UAAU,CACnB,kBADmB,8BAEE2B,OAFF;AAFvB,KAOG5B,KAAK,CAACyE,QAAN,CAAeC,GAAf,CACC5C,QADD,EAEC,UAAC6C,KAAD,EAAyBsB,KAAzB;AAAA,WACE;AACE,MAAA,SAAS,EAAEhG,UAAU,CACnB,iBADmB,EAEnBgG,KAAK,KAAKjE,UAAV,IAAwB,yBAFL,CADvB;AAKE,MAAA,GAAG,EAAEiE;AALP,MADF;AAAA,GAFD,CAPH,CAjCJ,EAuDGvD,UAAU,IAAIY,QAAd,IAA0B+D,YAA1B,IACC,oBAAC,qBAAD;AAAuB,IAAA,SAAS,EAAC,MAAjC;AAAwC,IAAA,OAAO,EAAE7B;AAAjD,IAxDJ,EA0DG9C,UAAU,IAAIY,QAAd,IAA0BgE,aAA1B,IACC,oBAAC,qBAAD;AAAuB,IAAA,SAAS,EAAC,OAAjC;AAAyC,IAAA,OAAO,EAAE7B;AAAlD,IA3DJ,CADF;AAgED,CAnWM","sourcesContent":["import * as React from \"react\";\nimport { classNames } from \"../../lib/classNames\";\nimport { Touch, TouchEvent } from \"../Touch/Touch\";\nimport HorizontalScrollArrow from \"../HorizontalScroll/HorizontalScrollArrow\";\nimport { useExternRef } from \"../../hooks/useExternRef\";\nimport { useDOM } from \"../../lib/dom\";\nimport { useAdaptivity } from \"../../hooks/useAdaptivity\";\nimport { useIsomorphicLayoutEffect } from \"../../lib/useIsomorphicLayoutEffect\";\nimport { useGlobalEventListener } from \"../../hooks/useGlobalEventListener\";\nimport { calcMax, calcMin } from \"./helpers\";\nimport {\n BaseGalleryProps,\n GallerySlidesState,\n LayoutState,\n ShiftingState,\n} from \"./types\";\nimport \"./BaseGallery.css\";\n\nconst ANIMATION_DURATION = 0.24;\n\nconst LAYOUT_DEFAULT_STATE = {\n containerWidth: 0,\n viewporOffsettWidth: 0,\n layerWidth: 0,\n min: 0,\n max: 0,\n slides: [],\n isFullyVisible: true,\n};\n\nconst SHIFT_DEFAULT_STATE = {\n animation: undefined,\n shiftX: 0,\n dragging: false,\n deltaX: 0,\n indent: 0,\n};\n\nexport const BaseGallery = ({\n bullets = false,\n getRootRef,\n children,\n slideWidth = \"100%\",\n slideIndex = 0,\n isDraggable = true,\n onDragStart,\n onDragEnd,\n onChange,\n onPrevClick,\n onNextClick,\n onEnd: onEndProp,\n align = \"left\",\n showArrows,\n getRef,\n ...restProps\n}: BaseGalleryProps) => {\n const slidesStore = React.useRef<Record<string, HTMLDivElement | null>>({});\n const layoutState = React.useRef<LayoutState>(LAYOUT_DEFAULT_STATE);\n const [shiftState, setShiftState] =\n React.useState<ShiftingState>(SHIFT_DEFAULT_STATE);\n\n const rootRef = useExternRef(getRootRef);\n const viewportRef = useExternRef(getRef);\n\n const { window } = useDOM();\n const { hasMouse } = useAdaptivity();\n\n const isCenterWithCustomWidth = slideWidth === \"custom\" && align === \"center\";\n\n const validateIndent = (value: number) => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n\n if (value < localMin) {\n return localMin;\n } else if (value > localMax) {\n return localMax;\n }\n\n return value;\n };\n\n /*\n * Считает отступ слоя галереи\n */\n const calculateIndent = (targetIndex: number) => {\n if (layoutState.current.isFullyVisible) {\n return 0;\n }\n\n const targetSlide = layoutState.current.slides?.length\n ? layoutState.current.slides[targetIndex]\n : null;\n\n if (targetSlide) {\n const { coordX, width } = targetSlide;\n\n if (isCenterWithCustomWidth) {\n const viewportWidth = layoutState.current.viewporOffsettWidth ?? 0;\n return viewportWidth / 2 - coordX - width / 2;\n }\n\n return validateIndent(-1 * coordX);\n }\n\n return 0;\n };\n\n /*\n * Считает отступ слоя галереи во время драга\n */\n const calculateDragIndent = () => {\n const localMax = layoutState.current.max ?? 0;\n const localMin = layoutState.current.min ?? 0;\n const indent = shiftState.shiftX + shiftState.deltaX;\n\n if (indent > localMax) {\n return localMax + Number((indent - localMax) / 3);\n } else if (indent < localMin) {\n return localMin + Number((indent - localMin) / 3);\n }\n\n return indent;\n };\n\n const initializeSlides = (options: { animation?: boolean } = {}) => {\n const localSlides =\n React.Children.map(\n children,\n (_item: React.ReactNode, i: number): GallerySlidesState => {\n const elem = slidesStore.current[`slide-${i}`];\n return {\n coordX: elem?.offsetLeft ?? 0,\n width: elem?.offsetWidth ?? 0,\n };\n }\n ) ?? [];\n\n const localContainerWidth = rootRef.current?.offsetWidth ?? 0;\n const localViewporOffsettWidth = viewportRef.current?.offsetWidth ?? 0;\n const localLayerWidth = localSlides.reduce(\n (val: number, slide: GallerySlidesState) => slide.width + val,\n 0\n );\n\n layoutState.current = {\n containerWidth: localContainerWidth,\n viewporOffsettWidth: localViewporOffsettWidth,\n layerWidth: localLayerWidth,\n max: calcMax({\n slides: localSlides,\n viewporOffsettWidth: localViewporOffsettWidth,\n isCenterWithCustomWidth,\n }),\n min: calcMin({\n containerWidth: localContainerWidth,\n layerWidth: localLayerWidth,\n slides: localSlides,\n viewporOffsettWidth: localViewporOffsettWidth,\n isCenterWithCustomWidth,\n align,\n }),\n slides: localSlides,\n isFullyVisible: localLayerWidth <= localContainerWidth,\n };\n\n setShiftState((prevState) => ({\n ...prevState,\n shiftX: calculateIndent(slideIndex),\n animation:\n options.animation ??\n prevState.shiftX === validateIndent(prevState.shiftX),\n }));\n };\n\n const onResize = () => {\n if (shiftState.animation !== undefined) {\n initializeSlides({ animation: false });\n }\n };\n\n useGlobalEventListener(window, \"resize\", onResize);\n\n useIsomorphicLayoutEffect(() => {\n initializeSlides({ animation: false });\n }, [children, align, slideWidth]);\n\n useIsomorphicLayoutEffect(() => {\n if (shiftState.animation !== undefined) {\n setShiftState((prevState) => ({\n ...prevState,\n animation: true,\n deltaX: 0,\n shiftX: calculateIndent(slideIndex ?? 0),\n }));\n }\n }, [slideIndex]);\n\n const slideLeft = () => {\n onChange?.(slideIndex - 1);\n onPrevClick?.();\n };\n\n const slideRight = () => {\n onChange?.(slideIndex + 1);\n onNextClick?.();\n };\n\n /*\n * Получает индекс слайда, к которому будет осуществлен переход\n */\n const getTarget = (e: TouchEvent) => {\n const expectDeltaX = (shiftState.deltaX / e.duration) * 240 * 0.6;\n const shift =\n shiftState.shiftX +\n shiftState.deltaX +\n expectDeltaX -\n (layoutState.current.max ?? 0);\n const direction = shiftState.deltaX < 0 ? 1 : -1;\n\n // Находим ближайшую границу слайда к текущему отступу\n let targetIndex = layoutState.current.slides.reduce(\n (val: number, item: GallerySlidesState, index: number) => {\n const previousValue = Math.abs(\n layoutState.current.slides[val].coordX + shift\n );\n const currentValue = Math.abs(item.coordX + shift);\n\n return previousValue < currentValue ? val : index;\n },\n slideIndex\n );\n\n if (targetIndex === slideIndex) {\n let targetSlide = slideIndex + direction;\n\n if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {\n if (\n Math.abs(shiftState.deltaX) >\n layoutState.current.slides[targetSlide].width * 0.05\n ) {\n targetIndex = targetSlide;\n }\n }\n }\n\n return targetIndex;\n };\n\n const onStart = () => {\n setShiftState((prevState) => ({ ...prevState, animation: false }));\n };\n\n const onMoveX = (e: TouchEvent) => {\n if (isDraggable && !layoutState.current.isFullyVisible) {\n e.originalEvent.preventDefault();\n\n if (e.isSlideX) {\n // TODO исправить в рамках issue #2698\n onDragStart?.(e);\n\n if (shiftState.deltaX !== e.shiftX) {\n setShiftState((prevState) => ({\n ...prevState,\n deltaX: e.shiftX,\n dragging: e.isSlideX,\n }));\n }\n }\n }\n };\n\n const onEnd = (e: TouchEvent) => {\n const targetIndex = e.isSlide ? getTarget(e) : slideIndex ?? 0;\n onDragEnd?.(e);\n\n const nextShiftState: Partial<ShiftingState> = {\n animation: true,\n dragging: false,\n deltaX: 0,\n };\n\n const shiftXStick = calculateDragIndent();\n if (targetIndex !== slideIndex) {\n // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)\n nextShiftState.shiftX = shiftXStick;\n }\n\n setShiftState((prevState) => ({ ...prevState, ...nextShiftState }));\n if (targetIndex !== slideIndex) {\n onChange?.(targetIndex);\n }\n\n // TODO исправить в рамках issue #2698\n onEndProp?.({ targetIndex });\n };\n\n const indent = shiftState.dragging\n ? calculateDragIndent()\n : shiftState.shiftX;\n\n const layerStyle = {\n WebkitTransform: `translateX(${indent}px)`,\n transform: `translateX(${indent}px)`,\n WebkitTransition: shiftState.animation\n ? `-webkit-transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n transition: shiftState.animation\n ? `transform ${ANIMATION_DURATION}s cubic-bezier(.1, 0, .25, 1)`\n : \"none\",\n };\n\n const setSlideRef = (slideRef: HTMLDivElement | null, slideIndex: number) => {\n slidesStore.current[`slide-${slideIndex}`] = slideRef;\n };\n\n // shiftX is negative number <= 0, we can swipe back only if it is < 0\n const canSlideLeft =\n !layoutState.current.isFullyVisible && shiftState.shiftX < 0;\n\n const canSlideRight =\n !layoutState.current.isFullyVisible &&\n // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side\n ((align === \"left\" &&\n layoutState.current.containerWidth - shiftState.shiftX <\n (layoutState.current.layerWidth ?? 0)) ||\n // otherwise we need to check current slide index (align = right or align = center)\n (align !== \"left\" && slideIndex < layoutState.current.slides.length - 1));\n\n return (\n <div\n {...restProps}\n vkuiClass={classNames(\n \"Gallery\",\n `Gallery--${align}`,\n shiftState.dragging && \"Gallery--dragging\",\n slideWidth === \"custom\" && \"Gallery--custom-width\"\n )}\n ref={rootRef}\n >\n <Touch\n vkuiClass=\"Gallery__viewport\"\n onStartX={onStart}\n onMoveX={onMoveX}\n onEnd={onEnd}\n style={{ width: slideWidth === \"custom\" ? \"100%\" : slideWidth }}\n getRootRef={viewportRef}\n noSlideClick\n >\n <div vkuiClass=\"Gallery__layer\" style={layerStyle}>\n {React.Children.map(children, (item: React.ReactNode, i: number) => (\n <div\n vkuiClass=\"Gallery__slide\"\n key={`slide-${i}`}\n ref={(el) => setSlideRef(el, i)}\n >\n {item}\n </div>\n ))}\n </div>\n </Touch>\n\n {bullets && (\n <div\n aria-hidden=\"true\"\n vkuiClass={classNames(\n \"Gallery__bullets\",\n `Gallery__bullets--${bullets}`\n )}\n >\n {React.Children.map(\n children,\n (_item: React.ReactNode, index: number) => (\n <div\n vkuiClass={classNames(\n \"Gallery__bullet\",\n index === slideIndex && \"Gallery__bullet--active\"\n )}\n key={index}\n />\n )\n )}\n </div>\n )}\n\n {showArrows && hasMouse && canSlideLeft && (\n <HorizontalScrollArrow direction=\"left\" onClick={slideLeft} />\n )}\n {showArrows && hasMouse && canSlideRight && (\n <HorizontalScrollArrow direction=\"right\" onClick={slideRight} />\n )}\n </div>\n );\n};\n"],"file":"BaseGallery.js"}
@@ -0,0 +1,12 @@
1
+ import { LayoutState } from "./types";
2
+ import { HasAlign } from "../../types";
3
+ interface CalcMin extends Partial<LayoutState> {
4
+ isCenterWithCustomWidth: boolean;
5
+ align: HasAlign["align"];
6
+ }
7
+ export declare const calcMin: ({ containerWidth, layerWidth, slides, viewporOffsettWidth, align, isCenterWithCustomWidth, }: CalcMin) => number | undefined;
8
+ interface CalcMax extends Partial<LayoutState> {
9
+ isCenterWithCustomWidth: boolean;
10
+ }
11
+ export declare const calcMax: ({ slides, viewporOffsettWidth, isCenterWithCustomWidth, }: CalcMax) => number;
12
+ export {};
@@ -0,0 +1,50 @@
1
+ export var calcMin = function calcMin(_ref) {
2
+ var _ref$containerWidth = _ref.containerWidth,
3
+ containerWidth = _ref$containerWidth === void 0 ? 0 : _ref$containerWidth,
4
+ _ref$layerWidth = _ref.layerWidth,
5
+ layerWidth = _ref$layerWidth === void 0 ? 0 : _ref$layerWidth,
6
+ _ref$slides = _ref.slides,
7
+ slides = _ref$slides === void 0 ? [] : _ref$slides,
8
+ _ref$viewporOffsettWi = _ref.viewporOffsettWidth,
9
+ viewporOffsettWidth = _ref$viewporOffsettWi === void 0 ? 0 : _ref$viewporOffsettWi,
10
+ align = _ref.align,
11
+ isCenterWithCustomWidth = _ref.isCenterWithCustomWidth;
12
+
13
+ switch (align) {
14
+ case "left":
15
+ return containerWidth - layerWidth;
16
+
17
+ case "right":
18
+ return viewporOffsettWidth - layerWidth;
19
+
20
+ case "center":
21
+ if (isCenterWithCustomWidth && slides.length) {
22
+ var _slides = slides[slides.length - 1],
23
+ coordX = _slides.coordX,
24
+ width = _slides.width;
25
+ return viewporOffsettWidth / 2 - coordX - width / 2;
26
+ } else {
27
+ return viewporOffsettWidth - (containerWidth - viewporOffsettWidth) / 2 - layerWidth;
28
+ }
29
+
30
+ }
31
+
32
+ return undefined;
33
+ };
34
+ export var calcMax = function calcMax(_ref2) {
35
+ var _ref2$slides = _ref2.slides,
36
+ slides = _ref2$slides === void 0 ? [] : _ref2$slides,
37
+ _ref2$viewporOffsettW = _ref2.viewporOffsettWidth,
38
+ viewporOffsettWidth = _ref2$viewporOffsettW === void 0 ? 0 : _ref2$viewporOffsettW,
39
+ isCenterWithCustomWidth = _ref2.isCenterWithCustomWidth;
40
+
41
+ if (isCenterWithCustomWidth && slides.length) {
42
+ var _slides$ = slides[0],
43
+ width = _slides$.width,
44
+ coordX = _slides$.coordX;
45
+ return viewporOffsettWidth / 2 - coordX - width / 2;
46
+ }
47
+
48
+ return 0;
49
+ };
50
+ //# sourceMappingURL=helpers.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/BaseGallery/helpers.ts"],"names":["calcMin","containerWidth","layerWidth","slides","viewporOffsettWidth","align","isCenterWithCustomWidth","length","coordX","width","undefined","calcMax"],"mappings":"AAQA,OAAO,IAAMA,OAAO,GAAG,SAAVA,OAAU,OAOR;AAAA,iCANbC,cAMa;AAAA,MANbA,cAMa,oCANI,CAMJ;AAAA,6BALbC,UAKa;AAAA,MALbA,UAKa,gCALA,CAKA;AAAA,yBAJbC,MAIa;AAAA,MAJbA,MAIa,4BAJJ,EAII;AAAA,mCAHbC,mBAGa;AAAA,MAHbA,mBAGa,sCAHS,CAGT;AAAA,MAFbC,KAEa,QAFbA,KAEa;AAAA,MADbC,uBACa,QADbA,uBACa;;AACb,UAAQD,KAAR;AACE,SAAK,MAAL;AACE,aAAOJ,cAAc,GAAGC,UAAxB;;AACF,SAAK,OAAL;AACE,aAAOE,mBAAmB,GAAGF,UAA7B;;AACF,SAAK,QAAL;AACE,UAAII,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;AAC5C,sBAA0BJ,MAAM,CAACA,MAAM,CAACI,MAAP,GAAgB,CAAjB,CAAhC;AAAA,YAAQC,MAAR,WAAQA,MAAR;AAAA,YAAgBC,KAAhB,WAAgBA,KAAhB;AACA,eAAOL,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;AACD,OAHD,MAGO;AACL,eACEL,mBAAmB,GACnB,CAACH,cAAc,GAAGG,mBAAlB,IAAyC,CADzC,GAEAF,UAHF;AAKD;;AAfL;;AAiBA,SAAOQ,SAAP;AACD,CA1BM;AAgCP,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAU,QAIR;AAAA,2BAHbR,MAGa;AAAA,MAHbA,MAGa,6BAHJ,EAGI;AAAA,oCAFbC,mBAEa;AAAA,MAFbA,mBAEa,sCAFS,CAET;AAAA,MADbE,uBACa,SADbA,uBACa;;AACb,MAAIA,uBAAuB,IAAIH,MAAM,CAACI,MAAtC,EAA8C;AAC5C,mBAA0BJ,MAAM,CAAC,CAAD,CAAhC;AAAA,QAAQM,KAAR,YAAQA,KAAR;AAAA,QAAeD,MAAf,YAAeA,MAAf;AACA,WAAOJ,mBAAmB,GAAG,CAAtB,GAA0BI,MAA1B,GAAmCC,KAAK,GAAG,CAAlD;AACD;;AACD,SAAO,CAAP;AACD,CAVM","sourcesContent":["import { LayoutState } from \"./types\";\nimport { HasAlign } from \"../../types\";\n\ninterface CalcMin extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n align: HasAlign[\"align\"];\n}\n\nexport const calcMin = ({\n containerWidth = 0,\n layerWidth = 0,\n slides = [],\n viewporOffsettWidth = 0,\n align,\n isCenterWithCustomWidth,\n}: CalcMin) => {\n switch (align) {\n case \"left\":\n return containerWidth - layerWidth;\n case \"right\":\n return viewporOffsettWidth - layerWidth;\n case \"center\":\n if (isCenterWithCustomWidth && slides.length) {\n const { coordX, width } = slides[slides.length - 1];\n return viewporOffsettWidth / 2 - coordX - width / 2;\n } else {\n return (\n viewporOffsettWidth -\n (containerWidth - viewporOffsettWidth) / 2 -\n layerWidth\n );\n }\n }\n return undefined;\n};\n\ninterface CalcMax extends Partial<LayoutState> {\n isCenterWithCustomWidth: boolean;\n}\n\nexport const calcMax = ({\n slides = [],\n viewporOffsettWidth = 0,\n isCenterWithCustomWidth,\n}: CalcMax) => {\n if (isCenterWithCustomWidth && slides.length) {\n const { width, coordX } = slides[0];\n return viewporOffsettWidth / 2 - coordX - width / 2;\n }\n return 0;\n};\n"],"file":"helpers.js"}
@@ -0,0 +1,43 @@
1
+ import * as React from "react";
2
+ import { HasAlign, HasRef, HasRootRef } from "../../types";
3
+ import { TouchEventHandler } from "../Touch/Touch";
4
+ export interface GallerySlidesState {
5
+ coordX: number;
6
+ width: number;
7
+ }
8
+ export interface ShiftingState {
9
+ deltaX: number;
10
+ shiftX: number;
11
+ animation?: boolean;
12
+ dragging: boolean;
13
+ }
14
+ export interface LayoutState {
15
+ containerWidth: number;
16
+ viewporOffsettWidth: number;
17
+ layerWidth: number;
18
+ min?: number;
19
+ max: number;
20
+ slides: GallerySlidesState[];
21
+ isFullyVisible: boolean;
22
+ }
23
+ export interface BaseGalleryProps extends Omit<React.HTMLAttributes<HTMLDivElement>, "onChange" | "onDragStart" | "onDragEnd">, HasAlign, HasRootRef<HTMLDivElement>, HasRef<HTMLElement> {
24
+ slideWidth?: string | number;
25
+ slideIndex?: number;
26
+ onDragStart?: TouchEventHandler;
27
+ onDragEnd?: TouchEventHandler;
28
+ onChange?(current: number): void;
29
+ onEnd?({ targetIndex }: {
30
+ targetIndex: number;
31
+ }): void;
32
+ /**
33
+ * Будет вызвано при клике на кнопку-стрелку влево
34
+ */
35
+ onPrevClick?(): void;
36
+ /**
37
+ * Будет вызвано при клике на кнопку-стрелку вправо
38
+ */
39
+ onNextClick?(): void;
40
+ bullets?: "dark" | "light" | false;
41
+ isDraggable?: boolean;
42
+ showArrows?: boolean;
43
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"types.js"}
@@ -1,4 +1,4 @@
1
- .vkuiButton{position:relative;display:inline-block;box-sizing:border-box;text-decoration:none;border:0;min-height:28px;min-height:var(--vkui--size_button_small_height--compact,28px);margin:0;padding:0;-webkit-user-select:none;user-select:none;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular,8px);max-width:100%;min-width:80px;min-width:var(--vkui--size_button_minimum_width--regular,80px)}.vkuiButton--singleIcon{min-width:28px;min-width:var(--vkui--size_button_small_height--compact,28px)}.vkuiButton--stretched{display:block;width:100%;flex-grow:1;flex-basis:0}.vkuiButton__in{display:flex;align-items:center;justify-content:center;width:100%;min-height:inherit;text-align:center;box-sizing:border-box}.vkuiButton--aln-left .vkuiButton__in{justify-content:flex-start;text-align:left}.vkuiButton--aln-right .vkuiButton__in{justify-content:flex-end;text-align:right}.vkuiButton[disabled]{opacity:.4;opacity:var(--vkui--opacity_disable,0.4)}.vkuiButton--lvl-primary[disabled]:not(.vkuiButton--clr-overlay):not(.vkuiButton--clr-negative):not(.vkuiButton--clr-positive),.vkuiButton--lvl-secondary[disabled]:not(.vkuiButton--clr-overlay),.vkuiButton--lvl-tertiary[disabled]:not(.vkuiButton--clr-overlay),.vkuiButton--lvl-outline[disabled]:not(.vkuiButton--clr-overlay){opacity:.64}.vkuiButton__content{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vkuiButton--sz-s .vkuiButton__content:first-child{padding-left:16px;padding-left:var(--vkui--size_button_base_small_padding_horizontal--regular,16px)}.vkuiButton--sz-s .vkuiButton__content:last-child,.vkuiButton--sz-s .vkuiButton__after{padding-right:var(--vkui--size_button_base_small_padding_horizontal--regular)}.vkuiButton--sz-m .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_base_medium_padding_horizontal--regular)}.vkuiButton--sz-m .vkuiButton__content:last-child,.vkuiButton--sz-m .vkuiButton__after{padding-right:var(--vkui--size_button_base_medium_padding_horizontal--regular)}.vkuiButton--sz-l .vkuiButton__content:first-child{padding-left:20px;padding-left:var(--vkui--size_button_base_large_padding_horizontal--regular,20px)}.vkuiButton--sz-l .vkuiButton__content:last-child,.vkuiButton--sz-l .vkuiButton__after{padding-right:var(--vkui--size_button_base_large_padding_horizontal--regular)}.vkuiButton--sz-s .vkuiButton__before{padding-left:var(--vkui--size_button_base_small_padding_horizontal_icon--regular)}.vkuiButton--sz-m .vkuiButton__before{padding-left:var(--vkui--size_button_base_medium_padding_horizontal_icon--regular)}.vkuiButton--sz-l .vkuiButton__before{padding-left:var(--vkui--size_button_base_large_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_small_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_small_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_medium_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_medium_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_large_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_large_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_small_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_medium_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_large_padding_horizontal_icon--regular)}.vkuiButton--singleIcon .vkuiButton__after,.vkuiButton--singleIcon .vkuiButton__before,.vkuiButton--lvl-tertiary.vkuiButton--singleIcon .vkuiButton__after,.vkuiButton--lvl-tertiary.vkuiButton--singleIcon .vkuiButton__before{margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}.vkuiButton__content--caps{-webkit-transform:translateY(0);transform:translateY(0)}.vkuiButton__spinner{position:absolute;left:0;top:0;right:0;bottom:0}.vkuiButton__spinner+.vkuiButton__in{visibility:hidden}.vkuiButton--lvl-primary.vkuiButton--clr-accent{background-color:#2d81e0;background-color:var(--button_primary_background,
1
+ .vkuiButton{position:relative;display:inline-block;box-sizing:border-box;text-decoration:none;border:0;min-height:28px;min-height:var(--vkui--size_button_small_height--compact,28px);margin:0;padding:0;-webkit-user-select:none;user-select:none;border-radius:8px;border-radius:var(--vkui--size_border_radius--regular,8px);max-width:100%;min-width:80px;min-width:var(--vkui--size_button_minimum_width--regular,80px)}.vkuiButton--loading{cursor:progress}.vkuiButton--singleIcon{min-width:28px;min-width:var(--vkui--size_button_small_height--compact,28px)}.vkuiButton--stretched{display:block;width:100%;flex-grow:1;flex-basis:0}.vkuiButton__in{display:flex;align-items:center;justify-content:center;width:100%;min-height:inherit;text-align:center;box-sizing:border-box}.vkuiButton--aln-left .vkuiButton__in{justify-content:flex-start;text-align:left}.vkuiButton--aln-right .vkuiButton__in{justify-content:flex-end;text-align:right}.vkuiButton[disabled]{opacity:.4;opacity:var(--vkui--opacity_disable,0.4)}.vkuiButton--lvl-primary[disabled]:not(.vkuiButton--clr-overlay):not(.vkuiButton--clr-negative):not(.vkuiButton--clr-positive),.vkuiButton--lvl-secondary[disabled]:not(.vkuiButton--clr-overlay),.vkuiButton--lvl-tertiary[disabled]:not(.vkuiButton--clr-overlay),.vkuiButton--lvl-outline[disabled]:not(.vkuiButton--clr-overlay){opacity:.64}.vkuiButton__content{white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.vkuiButton--sz-s .vkuiButton__content:first-child{padding-left:16px;padding-left:var(--vkui--size_button_base_small_padding_horizontal--regular,16px)}.vkuiButton--sz-s .vkuiButton__content:last-child,.vkuiButton--sz-s .vkuiButton__after{padding-right:var(--vkui--size_button_base_small_padding_horizontal--regular)}.vkuiButton--sz-m .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_base_medium_padding_horizontal--regular)}.vkuiButton--sz-m .vkuiButton__content:last-child,.vkuiButton--sz-m .vkuiButton__after{padding-right:var(--vkui--size_button_base_medium_padding_horizontal--regular)}.vkuiButton--sz-l .vkuiButton__content:first-child{padding-left:20px;padding-left:var(--vkui--size_button_base_large_padding_horizontal--regular,20px)}.vkuiButton--sz-l .vkuiButton__content:last-child,.vkuiButton--sz-l .vkuiButton__after{padding-right:var(--vkui--size_button_base_large_padding_horizontal--regular)}.vkuiButton--sz-s .vkuiButton__before{padding-left:var(--vkui--size_button_base_small_padding_horizontal_icon--regular)}.vkuiButton--sz-m .vkuiButton__before{padding-left:var(--vkui--size_button_base_medium_padding_horizontal_icon--regular)}.vkuiButton--sz-l .vkuiButton__before{padding-left:var(--vkui--size_button_base_large_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_small_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_small_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_medium_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_medium_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__content:first-child{padding-left:var(--vkui--size_button_tertiary_large_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__content:last-child,.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__after{padding-right:var(--vkui--size_button_tertiary_large_padding_horizontal--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-s .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_small_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-m .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_medium_padding_horizontal_icon--regular)}.vkuiButton--lvl-tertiary.vkuiButton--sz-l .vkuiButton__before{padding-left:var(--vkui--size_button_tertiary_large_padding_horizontal_icon--regular)}.vkuiButton--singleIcon .vkuiButton__after,.vkuiButton--singleIcon .vkuiButton__before,.vkuiButton--lvl-tertiary.vkuiButton--singleIcon .vkuiButton__after,.vkuiButton--lvl-tertiary.vkuiButton--singleIcon .vkuiButton__before{margin-left:auto;margin-right:auto;padding-left:0;padding-right:0}.vkuiButton__content--caps{-webkit-transform:translateY(0);transform:translateY(0)}.vkuiButton__spinner{position:absolute;left:0;top:0;right:0;bottom:0}.vkuiButton__spinner+.vkuiButton__in{visibility:hidden}.vkuiButton--lvl-primary.vkuiButton--clr-accent{background-color:#2d81e0;background-color:var(--button_primary_background,
2
2
  var(--vkui--color_background_accent)
3
3
  )}.vkuiButton--lvl-primary.vkuiButton--clr-accent.vkuiButton--hover{background-color:#2483e4;background-color:var(--vkui--color_background_accent--hover,#2483E4)}.vkuiButton--lvl-primary.vkuiButton--clr-accent.vkuiButton--active{background-color:#237edd;background-color:var(--vkui--color_background_accent--active,#237EDD)}.vkuiButton--lvl-primary.vkuiButton--clr-positive{background-color:#4bb34b;background-color:var(--button_commerce_background,
4
4
  var(--vkui--color_background_positive)
@@ -6,7 +6,7 @@ import { createScopedElement } from "../../lib/jsxRuntime";
6
6
  import * as React from "react";
7
7
  import { classNames } from "../../lib/classNames";
8
8
  import { ConfigProviderContext } from "../ConfigProvider/ConfigProviderContext";
9
- import Tappable from "../Tappable/Tappable";
9
+ import { Tappable } from "../Tappable/Tappable";
10
10
  import { Title } from "../Typography/Title/Title";
11
11
  import { Text } from "../Typography/Text/Text";
12
12
  import { Subhead } from "../Typography/Subhead/Subhead";
@@ -163,7 +163,7 @@ var ButtonComponent = function ButtonComponent(_ref) {
163
163
  onClick: loading ? undefined : onClick,
164
164
  focusVisibleMode: "outside",
165
165
  stopPropagation: stopPropagation,
166
- vkuiClass: classNames("Button", "Button--sz-".concat(size), "Button--lvl-".concat(resolvedMode), "Button--clr-".concat(resolvedAppearance), "Button--aln-".concat(align), "Button--sizeY-".concat(sizeY), stretched && "Button--stretched", hasIcons && "Button--with-icon", hasIconOnly && "Button--singleIcon"),
166
+ vkuiClass: classNames("Button", "Button--sz-".concat(size), "Button--lvl-".concat(resolvedMode), "Button--clr-".concat(resolvedAppearance), "Button--aln-".concat(align), "Button--sizeY-".concat(sizeY), stretched && "Button--stretched", hasIcons && "Button--with-icon", hasIconOnly && "Button--singleIcon", loading && "Button--loading"),
167
167
  getRootRef: getRootRef,
168
168
  hoverMode: hasNewTokens ? "Button--hover" : "background",
169
169
  activeMode: hasNewTokens ? "Button--active" : "opacity"