@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,399 @@
1
+ "use strict";
2
+
3
+ var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
5
+ var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
6
+
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ exports.BaseGallery = void 0;
11
+
12
+ var _jsxRuntime = require("../../lib/jsxRuntime");
13
+
14
+ var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
15
+
16
+ var _objectSpread2 = _interopRequireDefault(require("@babel/runtime/helpers/objectSpread2"));
17
+
18
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime/helpers/slicedToArray"));
19
+
20
+ var _objectWithoutProperties2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutProperties"));
21
+
22
+ var React = _interopRequireWildcard(require("react"));
23
+
24
+ var _classNames = require("../../lib/classNames");
25
+
26
+ var _Touch = require("../Touch/Touch");
27
+
28
+ var _HorizontalScrollArrow = _interopRequireDefault(require("../HorizontalScroll/HorizontalScrollArrow"));
29
+
30
+ var _useExternRef = require("../../hooks/useExternRef");
31
+
32
+ var _dom = require("../../lib/dom");
33
+
34
+ var _useAdaptivity2 = require("../../hooks/useAdaptivity");
35
+
36
+ var _useIsomorphicLayoutEffect = require("../../lib/useIsomorphicLayoutEffect");
37
+
38
+ var _useGlobalEventListener = require("../../hooks/useGlobalEventListener");
39
+
40
+ var _helpers = require("./helpers");
41
+
42
+ var _excluded = ["bullets", "getRootRef", "children", "slideWidth", "slideIndex", "isDraggable", "onDragStart", "onDragEnd", "onChange", "onPrevClick", "onNextClick", "onEnd", "align", "showArrows", "getRef"];
43
+ var ANIMATION_DURATION = 0.24;
44
+ var LAYOUT_DEFAULT_STATE = {
45
+ containerWidth: 0,
46
+ viewporOffsettWidth: 0,
47
+ layerWidth: 0,
48
+ min: 0,
49
+ max: 0,
50
+ slides: [],
51
+ isFullyVisible: true
52
+ };
53
+ var SHIFT_DEFAULT_STATE = {
54
+ animation: undefined,
55
+ shiftX: 0,
56
+ dragging: false,
57
+ deltaX: 0,
58
+ indent: 0
59
+ };
60
+
61
+ var BaseGallery = function BaseGallery(_ref) {
62
+ var _layoutState$current$8;
63
+
64
+ var _ref$bullets = _ref.bullets,
65
+ bullets = _ref$bullets === void 0 ? false : _ref$bullets,
66
+ getRootRef = _ref.getRootRef,
67
+ children = _ref.children,
68
+ _ref$slideWidth = _ref.slideWidth,
69
+ slideWidth = _ref$slideWidth === void 0 ? "100%" : _ref$slideWidth,
70
+ _ref$slideIndex = _ref.slideIndex,
71
+ slideIndex = _ref$slideIndex === void 0 ? 0 : _ref$slideIndex,
72
+ _ref$isDraggable = _ref.isDraggable,
73
+ isDraggable = _ref$isDraggable === void 0 ? true : _ref$isDraggable,
74
+ onDragStart = _ref.onDragStart,
75
+ onDragEnd = _ref.onDragEnd,
76
+ onChange = _ref.onChange,
77
+ onPrevClick = _ref.onPrevClick,
78
+ onNextClick = _ref.onNextClick,
79
+ onEndProp = _ref.onEnd,
80
+ _ref$align = _ref.align,
81
+ align = _ref$align === void 0 ? "left" : _ref$align,
82
+ showArrows = _ref.showArrows,
83
+ getRef = _ref.getRef,
84
+ restProps = (0, _objectWithoutProperties2.default)(_ref, _excluded);
85
+ var slidesStore = React.useRef({});
86
+ var layoutState = React.useRef(LAYOUT_DEFAULT_STATE);
87
+
88
+ var _React$useState = React.useState(SHIFT_DEFAULT_STATE),
89
+ _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
90
+ shiftState = _React$useState2[0],
91
+ setShiftState = _React$useState2[1];
92
+
93
+ var rootRef = (0, _useExternRef.useExternRef)(getRootRef);
94
+ var viewportRef = (0, _useExternRef.useExternRef)(getRef);
95
+
96
+ var _useDOM = (0, _dom.useDOM)(),
97
+ window = _useDOM.window;
98
+
99
+ var _useAdaptivity = (0, _useAdaptivity2.useAdaptivity)(),
100
+ hasMouse = _useAdaptivity.hasMouse;
101
+
102
+ var isCenterWithCustomWidth = slideWidth === "custom" && align === "center";
103
+
104
+ var validateIndent = function validateIndent(value) {
105
+ var _layoutState$current$, _layoutState$current$2;
106
+
107
+ var localMax = (_layoutState$current$ = layoutState.current.max) !== null && _layoutState$current$ !== void 0 ? _layoutState$current$ : 0;
108
+ var localMin = (_layoutState$current$2 = layoutState.current.min) !== null && _layoutState$current$2 !== void 0 ? _layoutState$current$2 : 0;
109
+
110
+ if (value < localMin) {
111
+ return localMin;
112
+ } else if (value > localMax) {
113
+ return localMax;
114
+ }
115
+
116
+ return value;
117
+ };
118
+ /*
119
+ * Считает отступ слоя галереи
120
+ */
121
+
122
+
123
+ var calculateIndent = function calculateIndent(targetIndex) {
124
+ var _layoutState$current$3;
125
+
126
+ if (layoutState.current.isFullyVisible) {
127
+ return 0;
128
+ }
129
+
130
+ var targetSlide = (_layoutState$current$3 = layoutState.current.slides) !== null && _layoutState$current$3 !== void 0 && _layoutState$current$3.length ? layoutState.current.slides[targetIndex] : null;
131
+
132
+ if (targetSlide) {
133
+ var coordX = targetSlide.coordX,
134
+ width = targetSlide.width;
135
+
136
+ if (isCenterWithCustomWidth) {
137
+ var _layoutState$current$4;
138
+
139
+ var viewportWidth = (_layoutState$current$4 = layoutState.current.viewporOffsettWidth) !== null && _layoutState$current$4 !== void 0 ? _layoutState$current$4 : 0;
140
+ return viewportWidth / 2 - coordX - width / 2;
141
+ }
142
+
143
+ return validateIndent(-1 * coordX);
144
+ }
145
+
146
+ return 0;
147
+ };
148
+ /*
149
+ * Считает отступ слоя галереи во время драга
150
+ */
151
+
152
+
153
+ var calculateDragIndent = function calculateDragIndent() {
154
+ var _layoutState$current$5, _layoutState$current$6;
155
+
156
+ var localMax = (_layoutState$current$5 = layoutState.current.max) !== null && _layoutState$current$5 !== void 0 ? _layoutState$current$5 : 0;
157
+ var localMin = (_layoutState$current$6 = layoutState.current.min) !== null && _layoutState$current$6 !== void 0 ? _layoutState$current$6 : 0;
158
+ var indent = shiftState.shiftX + shiftState.deltaX;
159
+
160
+ if (indent > localMax) {
161
+ return localMax + Number((indent - localMax) / 3);
162
+ } else if (indent < localMin) {
163
+ return localMin + Number((indent - localMin) / 3);
164
+ }
165
+
166
+ return indent;
167
+ };
168
+
169
+ var initializeSlides = function initializeSlides() {
170
+ var _React$Children$map, _rootRef$current$offs, _rootRef$current, _viewportRef$current$, _viewportRef$current;
171
+
172
+ var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
173
+ var localSlides = (_React$Children$map = React.Children.map(children, function (_item, i) {
174
+ var _elem$offsetLeft, _elem$offsetWidth;
175
+
176
+ var elem = slidesStore.current["slide-".concat(i)];
177
+ return {
178
+ coordX: (_elem$offsetLeft = elem === null || elem === void 0 ? void 0 : elem.offsetLeft) !== null && _elem$offsetLeft !== void 0 ? _elem$offsetLeft : 0,
179
+ width: (_elem$offsetWidth = elem === null || elem === void 0 ? void 0 : elem.offsetWidth) !== null && _elem$offsetWidth !== void 0 ? _elem$offsetWidth : 0
180
+ };
181
+ })) !== null && _React$Children$map !== void 0 ? _React$Children$map : [];
182
+ 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;
183
+ 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;
184
+ var localLayerWidth = localSlides.reduce(function (val, slide) {
185
+ return slide.width + val;
186
+ }, 0);
187
+ layoutState.current = {
188
+ containerWidth: localContainerWidth,
189
+ viewporOffsettWidth: localViewporOffsettWidth,
190
+ layerWidth: localLayerWidth,
191
+ max: (0, _helpers.calcMax)({
192
+ slides: localSlides,
193
+ viewporOffsettWidth: localViewporOffsettWidth,
194
+ isCenterWithCustomWidth: isCenterWithCustomWidth
195
+ }),
196
+ min: (0, _helpers.calcMin)({
197
+ containerWidth: localContainerWidth,
198
+ layerWidth: localLayerWidth,
199
+ slides: localSlides,
200
+ viewporOffsettWidth: localViewporOffsettWidth,
201
+ isCenterWithCustomWidth: isCenterWithCustomWidth,
202
+ align: align
203
+ }),
204
+ slides: localSlides,
205
+ isFullyVisible: localLayerWidth <= localContainerWidth
206
+ };
207
+ setShiftState(function (prevState) {
208
+ var _options$animation;
209
+
210
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
211
+ shiftX: calculateIndent(slideIndex),
212
+ animation: (_options$animation = options.animation) !== null && _options$animation !== void 0 ? _options$animation : prevState.shiftX === validateIndent(prevState.shiftX)
213
+ });
214
+ });
215
+ };
216
+
217
+ var onResize = function onResize() {
218
+ if (shiftState.animation !== undefined) {
219
+ initializeSlides({
220
+ animation: false
221
+ });
222
+ }
223
+ };
224
+
225
+ (0, _useGlobalEventListener.useGlobalEventListener)(window, "resize", onResize);
226
+ (0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(function () {
227
+ initializeSlides({
228
+ animation: false
229
+ });
230
+ }, [children, align, slideWidth]);
231
+ (0, _useIsomorphicLayoutEffect.useIsomorphicLayoutEffect)(function () {
232
+ if (shiftState.animation !== undefined) {
233
+ setShiftState(function (prevState) {
234
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
235
+ animation: true,
236
+ deltaX: 0,
237
+ shiftX: calculateIndent(slideIndex !== null && slideIndex !== void 0 ? slideIndex : 0)
238
+ });
239
+ });
240
+ }
241
+ }, [slideIndex]);
242
+
243
+ var slideLeft = function slideLeft() {
244
+ onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex - 1);
245
+ onPrevClick === null || onPrevClick === void 0 ? void 0 : onPrevClick();
246
+ };
247
+
248
+ var slideRight = function slideRight() {
249
+ onChange === null || onChange === void 0 ? void 0 : onChange(slideIndex + 1);
250
+ onNextClick === null || onNextClick === void 0 ? void 0 : onNextClick();
251
+ };
252
+ /*
253
+ * Получает индекс слайда, к которому будет осуществлен переход
254
+ */
255
+
256
+
257
+ var getTarget = function getTarget(e) {
258
+ var _layoutState$current$7;
259
+
260
+ var expectDeltaX = shiftState.deltaX / e.duration * 240 * 0.6;
261
+ var shift = shiftState.shiftX + shiftState.deltaX + expectDeltaX - ((_layoutState$current$7 = layoutState.current.max) !== null && _layoutState$current$7 !== void 0 ? _layoutState$current$7 : 0);
262
+ var direction = shiftState.deltaX < 0 ? 1 : -1; // Находим ближайшую границу слайда к текущему отступу
263
+
264
+ var targetIndex = layoutState.current.slides.reduce(function (val, item, index) {
265
+ var previousValue = Math.abs(layoutState.current.slides[val].coordX + shift);
266
+ var currentValue = Math.abs(item.coordX + shift);
267
+ return previousValue < currentValue ? val : index;
268
+ }, slideIndex);
269
+
270
+ if (targetIndex === slideIndex) {
271
+ var targetSlide = slideIndex + direction;
272
+
273
+ if (targetSlide >= 0 && targetSlide < layoutState.current.slides.length) {
274
+ if (Math.abs(shiftState.deltaX) > layoutState.current.slides[targetSlide].width * 0.05) {
275
+ targetIndex = targetSlide;
276
+ }
277
+ }
278
+ }
279
+
280
+ return targetIndex;
281
+ };
282
+
283
+ var onStart = function onStart() {
284
+ setShiftState(function (prevState) {
285
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
286
+ animation: false
287
+ });
288
+ });
289
+ };
290
+
291
+ var onMoveX = function onMoveX(e) {
292
+ if (isDraggable && !layoutState.current.isFullyVisible) {
293
+ e.originalEvent.preventDefault();
294
+
295
+ if (e.isSlideX) {
296
+ // TODO исправить в рамках issue #2698
297
+ onDragStart === null || onDragStart === void 0 ? void 0 : onDragStart(e);
298
+
299
+ if (shiftState.deltaX !== e.shiftX) {
300
+ setShiftState(function (prevState) {
301
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), {}, {
302
+ deltaX: e.shiftX,
303
+ dragging: e.isSlideX
304
+ });
305
+ });
306
+ }
307
+ }
308
+ }
309
+ };
310
+
311
+ var onEnd = function onEnd(e) {
312
+ var targetIndex = e.isSlide ? getTarget(e) : slideIndex !== null && slideIndex !== void 0 ? slideIndex : 0;
313
+ onDragEnd === null || onDragEnd === void 0 ? void 0 : onDragEnd(e);
314
+ var nextShiftState = {
315
+ animation: true,
316
+ dragging: false,
317
+ deltaX: 0
318
+ };
319
+ var shiftXStick = calculateDragIndent();
320
+
321
+ if (targetIndex !== slideIndex) {
322
+ // Сохраняем сдвиг слайда в том положении, в каком его оставили после драга (fix issue #2185)
323
+ nextShiftState.shiftX = shiftXStick;
324
+ }
325
+
326
+ setShiftState(function (prevState) {
327
+ return (0, _objectSpread2.default)((0, _objectSpread2.default)({}, prevState), nextShiftState);
328
+ });
329
+
330
+ if (targetIndex !== slideIndex) {
331
+ onChange === null || onChange === void 0 ? void 0 : onChange(targetIndex);
332
+ } // TODO исправить в рамках issue #2698
333
+
334
+
335
+ onEndProp === null || onEndProp === void 0 ? void 0 : onEndProp({
336
+ targetIndex: targetIndex
337
+ });
338
+ };
339
+
340
+ var indent = shiftState.dragging ? calculateDragIndent() : shiftState.shiftX;
341
+ var layerStyle = {
342
+ WebkitTransform: "translateX(".concat(indent, "px)"),
343
+ transform: "translateX(".concat(indent, "px)"),
344
+ WebkitTransition: shiftState.animation ? "-webkit-transform ".concat(ANIMATION_DURATION, "s cubic-bezier(.1, 0, .25, 1)") : "none",
345
+ transition: shiftState.animation ? "transform ".concat(ANIMATION_DURATION, "s cubic-bezier(.1, 0, .25, 1)") : "none"
346
+ };
347
+
348
+ var setSlideRef = function setSlideRef(slideRef, slideIndex) {
349
+ slidesStore.current["slide-".concat(slideIndex)] = slideRef;
350
+ }; // shiftX is negative number <= 0, we can swipe back only if it is < 0
351
+
352
+
353
+ var canSlideLeft = !layoutState.current.isFullyVisible && shiftState.shiftX < 0;
354
+ var canSlideRight = !layoutState.current.isFullyVisible && ( // we can't move right when gallery layer fully scrolled right, if gallery aligned by left side
355
+ 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)
356
+ align !== "left" && slideIndex < layoutState.current.slides.length - 1);
357
+ return (0, _jsxRuntime.createScopedElement)("div", (0, _extends2.default)({}, restProps, {
358
+ vkuiClass: (0, _classNames.classNames)("Gallery", "Gallery--".concat(align), shiftState.dragging && "Gallery--dragging", slideWidth === "custom" && "Gallery--custom-width"),
359
+ ref: rootRef
360
+ }), (0, _jsxRuntime.createScopedElement)(_Touch.Touch, {
361
+ vkuiClass: "Gallery__viewport",
362
+ onStartX: onStart,
363
+ onMoveX: onMoveX,
364
+ onEnd: onEnd,
365
+ style: {
366
+ width: slideWidth === "custom" ? "100%" : slideWidth
367
+ },
368
+ getRootRef: viewportRef,
369
+ noSlideClick: true
370
+ }, (0, _jsxRuntime.createScopedElement)("div", {
371
+ vkuiClass: "Gallery__layer",
372
+ style: layerStyle
373
+ }, React.Children.map(children, function (item, i) {
374
+ return (0, _jsxRuntime.createScopedElement)("div", {
375
+ vkuiClass: "Gallery__slide",
376
+ key: "slide-".concat(i),
377
+ ref: function ref(el) {
378
+ return setSlideRef(el, i);
379
+ }
380
+ }, item);
381
+ }))), bullets && (0, _jsxRuntime.createScopedElement)("div", {
382
+ "aria-hidden": "true",
383
+ vkuiClass: (0, _classNames.classNames)("Gallery__bullets", "Gallery__bullets--".concat(bullets))
384
+ }, React.Children.map(children, function (_item, index) {
385
+ return (0, _jsxRuntime.createScopedElement)("div", {
386
+ vkuiClass: (0, _classNames.classNames)("Gallery__bullet", index === slideIndex && "Gallery__bullet--active"),
387
+ key: index
388
+ });
389
+ })), showArrows && hasMouse && canSlideLeft && (0, _jsxRuntime.createScopedElement)(_HorizontalScrollArrow.default, {
390
+ direction: "left",
391
+ onClick: slideLeft
392
+ }), showArrows && hasMouse && canSlideRight && (0, _jsxRuntime.createScopedElement)(_HorizontalScrollArrow.default, {
393
+ direction: "right",
394
+ onClick: slideRight
395
+ }));
396
+ };
397
+
398
+ exports.BaseGallery = BaseGallery;
399
+ //# sourceMappingURL=BaseGallery.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/components/BaseGallery/BaseGallery.tsx"],"names":["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","React","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":"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","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,62 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.calcMin = exports.calcMax = void 0;
7
+
8
+ var calcMin = function calcMin(_ref) {
9
+ var _ref$containerWidth = _ref.containerWidth,
10
+ containerWidth = _ref$containerWidth === void 0 ? 0 : _ref$containerWidth,
11
+ _ref$layerWidth = _ref.layerWidth,
12
+ layerWidth = _ref$layerWidth === void 0 ? 0 : _ref$layerWidth,
13
+ _ref$slides = _ref.slides,
14
+ slides = _ref$slides === void 0 ? [] : _ref$slides,
15
+ _ref$viewporOffsettWi = _ref.viewporOffsettWidth,
16
+ viewporOffsettWidth = _ref$viewporOffsettWi === void 0 ? 0 : _ref$viewporOffsettWi,
17
+ align = _ref.align,
18
+ isCenterWithCustomWidth = _ref.isCenterWithCustomWidth;
19
+
20
+ switch (align) {
21
+ case "left":
22
+ return containerWidth - layerWidth;
23
+
24
+ case "right":
25
+ return viewporOffsettWidth - layerWidth;
26
+
27
+ case "center":
28
+ if (isCenterWithCustomWidth && slides.length) {
29
+ var _slides = slides[slides.length - 1],
30
+ coordX = _slides.coordX,
31
+ width = _slides.width;
32
+ return viewporOffsettWidth / 2 - coordX - width / 2;
33
+ } else {
34
+ return viewporOffsettWidth - (containerWidth - viewporOffsettWidth) / 2 - layerWidth;
35
+ }
36
+
37
+ }
38
+
39
+ return undefined;
40
+ };
41
+
42
+ exports.calcMin = calcMin;
43
+
44
+ var calcMax = function calcMax(_ref2) {
45
+ var _ref2$slides = _ref2.slides,
46
+ slides = _ref2$slides === void 0 ? [] : _ref2$slides,
47
+ _ref2$viewporOffsettW = _ref2.viewporOffsettWidth,
48
+ viewporOffsettWidth = _ref2$viewporOffsettW === void 0 ? 0 : _ref2$viewporOffsettW,
49
+ isCenterWithCustomWidth = _ref2.isCenterWithCustomWidth;
50
+
51
+ if (isCenterWithCustomWidth && slides.length) {
52
+ var _slides$ = slides[0],
53
+ width = _slides$.width,
54
+ coordX = _slides$.coordX;
55
+ return viewporOffsettWidth / 2 - coordX - width / 2;
56
+ }
57
+
58
+ return 0;
59
+ };
60
+
61
+ exports.calcMax = calcMax;
62
+ //# 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":";;;;;;;AAQO,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;;;;AAgCA,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,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":[],"names":[],"mappings":"","sourcesContent":[],"file":"types.js"}
@@ -21,7 +21,7 @@ var _classNames = require("../../lib/classNames");
21
21
 
22
22
  var _ConfigProviderContext = require("../ConfigProvider/ConfigProviderContext");
23
23
 
24
- var _Tappable = _interopRequireDefault(require("../Tappable/Tappable"));
24
+ var _Tappable = require("../Tappable/Tappable");
25
25
 
26
26
  var _Title = require("../Typography/Title/Title");
27
27
 
@@ -182,12 +182,12 @@ var ButtonComponent = function ButtonComponent(_ref) {
182
182
  resolvedAppearance = _resolveButtonAppeara.resolvedAppearance;
183
183
 
184
184
  var hasNewTokens = React.useContext(_ConfigProviderContext.ConfigProviderContext).hasNewTokens;
185
- return (0, _jsxRuntime.createScopedElement)(_Tappable.default, (0, _extends2.default)({}, restProps, {
185
+ return (0, _jsxRuntime.createScopedElement)(_Tappable.Tappable, (0, _extends2.default)({}, restProps, {
186
186
  Component: restProps.href ? "a" : Component,
187
187
  onClick: loading ? undefined : onClick,
188
188
  focusVisibleMode: "outside",
189
189
  stopPropagation: stopPropagation,
190
- vkuiClass: (0, _classNames.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"),
190
+ vkuiClass: (0, _classNames.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"),
191
191
  getRootRef: getRootRef,
192
192
  hoverMode: hasNewTokens ? "Button--hover" : "background",
193
193
  activeMode: hasNewTokens ? "Button--active" : "opacity"