@salutejs/plasma-new-hope 0.326.0-canary.2013.15518408913.0 → 0.326.0-canary.2014.15531870271.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 (280) hide show
  1. package/cjs/components/Carousel/Carousel.css +4 -0
  2. package/cjs/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +1 -1
  3. package/cjs/components/Carousel/Carousel.js.map +1 -0
  4. package/cjs/components/Carousel/{CarouselOld/Carousel.styles.js → Carousel.styles.js} +9 -9
  5. package/cjs/components/Carousel/Carousel.styles.js.map +1 -0
  6. package/cjs/components/Carousel/Carousel.styles_zmchjj.css +4 -0
  7. package/cjs/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +5 -5
  8. package/cjs/components/Carousel/CarouselItem.js.map +1 -0
  9. package/cjs/components/Carousel/CarouselItem_cqjszm.css +1 -0
  10. package/cjs/components/Carousel/useCarousel.js.map +1 -0
  11. package/cjs/components/Carousel/{CarouselOld/useDragScroll.js → useDragScroll.js} +1 -1
  12. package/cjs/components/Carousel/useDragScroll.js.map +1 -0
  13. package/cjs/components/Sheet/hooks/useOverflow.js +2 -1
  14. package/cjs/components/Sheet/hooks/useOverflow.js.map +1 -1
  15. package/cjs/index.css +4 -17
  16. package/cjs/index.js +3 -10
  17. package/cjs/index.js.map +1 -1
  18. package/emotion/cjs/components/Carousel/Carousel.styles.js +49 -0
  19. package/emotion/cjs/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +2 -2
  20. package/emotion/cjs/components/Carousel/index.js +3 -23
  21. package/emotion/cjs/components/Sheet/hooks/useOverflow.js +2 -1
  22. package/emotion/cjs/examples/plasma_b2c/components/Carousel/Carousel.config.js +2 -14
  23. package/emotion/cjs/examples/plasma_b2c/components/Carousel/Carousel.js +1 -1
  24. package/emotion/cjs/examples/plasma_b2c/components/Carousel/Carousel.stories.tsx +28 -92
  25. package/emotion/cjs/hooks/index.js +0 -7
  26. package/emotion/es/components/Carousel/Carousel.styles.js +42 -0
  27. package/emotion/es/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +2 -2
  28. package/emotion/es/components/Carousel/index.js +3 -7
  29. package/emotion/es/components/Sheet/hooks/useOverflow.js +2 -1
  30. package/emotion/es/examples/plasma_b2c/components/Carousel/Carousel.config.js +2 -14
  31. package/emotion/es/examples/plasma_b2c/components/Carousel/Carousel.js +2 -2
  32. package/emotion/es/examples/plasma_b2c/components/Carousel/Carousel.stories.tsx +28 -92
  33. package/emotion/es/hooks/index.js +0 -1
  34. package/es/components/Carousel/Carousel.css +4 -0
  35. package/es/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +1 -1
  36. package/es/components/Carousel/Carousel.js.map +1 -0
  37. package/es/components/Carousel/{CarouselOld/Carousel.styles.js → Carousel.styles.js} +9 -9
  38. package/es/components/Carousel/Carousel.styles.js.map +1 -0
  39. package/es/components/Carousel/Carousel.styles_zmchjj.css +4 -0
  40. package/es/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +5 -5
  41. package/es/components/Carousel/CarouselItem.js.map +1 -0
  42. package/es/components/Carousel/CarouselItem_cqjszm.css +1 -0
  43. package/es/components/Carousel/useCarousel.js.map +1 -0
  44. package/es/components/Carousel/{CarouselOld/useDragScroll.js → useDragScroll.js} +1 -1
  45. package/es/components/Carousel/useDragScroll.js.map +1 -0
  46. package/es/components/Sheet/hooks/useOverflow.js +2 -1
  47. package/es/components/Sheet/hooks/useOverflow.js.map +1 -1
  48. package/es/index.css +4 -17
  49. package/es/index.js +3 -6
  50. package/es/index.js.map +1 -1
  51. package/package.json +5 -5
  52. package/styled-components/cjs/components/Carousel/{CarouselOld/Carousel.styles.js → Carousel.styles.js} +3 -3
  53. package/styled-components/cjs/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +1 -1
  54. package/styled-components/cjs/components/Carousel/index.js +3 -23
  55. package/styled-components/cjs/components/Sheet/hooks/useOverflow.js +2 -1
  56. package/styled-components/cjs/examples/plasma_b2c/components/Carousel/Carousel.config.js +2 -14
  57. package/styled-components/cjs/examples/plasma_b2c/components/Carousel/Carousel.js +1 -1
  58. package/styled-components/cjs/examples/plasma_b2c/components/Carousel/Carousel.stories.tsx +28 -92
  59. package/styled-components/cjs/hooks/index.js +0 -7
  60. package/styled-components/es/components/Carousel/{CarouselOld/Carousel.styles.js → Carousel.styles.js} +3 -3
  61. package/styled-components/es/components/Carousel/{CarouselOld/CarouselItem.js → CarouselItem.js} +1 -1
  62. package/styled-components/es/components/Carousel/index.js +3 -7
  63. package/styled-components/es/components/Sheet/hooks/useOverflow.js +2 -1
  64. package/styled-components/es/examples/plasma_b2c/components/Carousel/Carousel.config.js +2 -14
  65. package/styled-components/es/examples/plasma_b2c/components/Carousel/Carousel.js +2 -2
  66. package/styled-components/es/examples/plasma_b2c/components/Carousel/Carousel.stories.tsx +28 -92
  67. package/styled-components/es/hooks/index.js +0 -1
  68. package/types/components/Carousel/{CarouselOld/Carousel.d.ts → Carousel.d.ts} +1 -1
  69. package/types/components/Carousel/Carousel.d.ts.map +1 -0
  70. package/types/components/Carousel/Carousel.styles.d.ts.map +1 -0
  71. package/types/components/Carousel/{CarouselOld/Carousel.types.d.ts → Carousel.types.d.ts} +1 -1
  72. package/types/components/Carousel/Carousel.types.d.ts.map +1 -0
  73. package/types/components/Carousel/CarouselItem.d.ts.map +1 -0
  74. package/types/components/Carousel/index.d.ts +4 -7
  75. package/types/components/Carousel/index.d.ts.map +1 -1
  76. package/types/components/Carousel/useCarousel.d.ts.map +1 -0
  77. package/types/components/Carousel/useDragScroll.d.ts.map +1 -0
  78. package/types/components/Sheet/hooks/useOverflow.d.ts.map +1 -1
  79. package/types/hooks/index.d.ts +0 -1
  80. package/types/hooks/index.d.ts.map +1 -1
  81. package/cjs/components/Carousel/CarouselNew/Carousel.css +0 -12
  82. package/cjs/components/Carousel/CarouselNew/Carousel.js +0 -98
  83. package/cjs/components/Carousel/CarouselNew/Carousel.js.map +0 -1
  84. package/cjs/components/Carousel/CarouselNew/Carousel.styles.js +0 -11
  85. package/cjs/components/Carousel/CarouselNew/Carousel.styles.js.map +0 -1
  86. package/cjs/components/Carousel/CarouselNew/Carousel.styles_1gx7oht.css +0 -4
  87. package/cjs/components/Carousel/CarouselNew/Carousel.tokens.js +0 -23
  88. package/cjs/components/Carousel/CarouselNew/Carousel.tokens.js.map +0 -1
  89. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -428
  90. package/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js.map +0 -1
  91. package/cjs/components/Carousel/CarouselNew/hooks/useDragScroll.js +0 -62
  92. package/cjs/components/Carousel/CarouselNew/hooks/useDragScroll.js.map +0 -1
  93. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.css +0 -5
  94. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -227
  95. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.js.map +0 -1
  96. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -39
  97. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js.map +0 -1
  98. package/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.styles_1i4srxq.css +0 -5
  99. package/cjs/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -50
  100. package/cjs/components/Carousel/CarouselNew/ui/Dots/utils/index.js.map +0 -1
  101. package/cjs/components/Carousel/CarouselNew/variations/_size/base.js +0 -9
  102. package/cjs/components/Carousel/CarouselNew/variations/_size/base.js.map +0 -1
  103. package/cjs/components/Carousel/CarouselNew/variations/_size/base_x642ct.css +0 -1
  104. package/cjs/components/Carousel/CarouselNew/variations/_view/base.js +0 -9
  105. package/cjs/components/Carousel/CarouselNew/variations/_view/base.js.map +0 -1
  106. package/cjs/components/Carousel/CarouselNew/variations/_view/base_x642ct.css +0 -1
  107. package/cjs/components/Carousel/CarouselOld/Carousel.css +0 -4
  108. package/cjs/components/Carousel/CarouselOld/Carousel.js.map +0 -1
  109. package/cjs/components/Carousel/CarouselOld/Carousel.styles.js.map +0 -1
  110. package/cjs/components/Carousel/CarouselOld/Carousel.styles_12r304j.css +0 -4
  111. package/cjs/components/Carousel/CarouselOld/CarouselItem.js.map +0 -1
  112. package/cjs/components/Carousel/CarouselOld/CarouselItem_uvoxfy.css +0 -1
  113. package/cjs/components/Carousel/CarouselOld/useCarousel.js.map +0 -1
  114. package/cjs/components/Carousel/CarouselOld/useDragScroll.js.map +0 -1
  115. package/cjs/hooks/useDidMountLayoutEffect.js +0 -19
  116. package/cjs/hooks/useDidMountLayoutEffect.js.map +0 -1
  117. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.js +0 -99
  118. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.styles.js +0 -51
  119. package/emotion/cjs/components/Carousel/CarouselNew/Carousel.tokens.js +0 -21
  120. package/emotion/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -419
  121. package/emotion/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -229
  122. package/emotion/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -38
  123. package/emotion/cjs/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -47
  124. package/emotion/cjs/components/Carousel/CarouselNew/ui/Item/Item.js +0 -38
  125. package/emotion/cjs/components/Carousel/CarouselNew/ui/index.js +0 -27
  126. package/emotion/cjs/components/Carousel/CarouselNew/variations/_size/base.js +0 -8
  127. package/emotion/cjs/components/Carousel/CarouselNew/variations/_size/tokens.json +0 -1
  128. package/emotion/cjs/components/Carousel/CarouselNew/variations/_view/base.js +0 -8
  129. package/emotion/cjs/components/Carousel/CarouselNew/variations/_view/tokens.json +0 -1
  130. package/emotion/cjs/components/Carousel/CarouselOld/Carousel.styles.js +0 -49
  131. package/emotion/cjs/components/Carousel/CarouselOld/index.js +0 -32
  132. package/emotion/cjs/hooks/useDidMountLayoutEffect.js +0 -17
  133. package/emotion/es/components/Carousel/CarouselNew/Carousel.js +0 -94
  134. package/emotion/es/components/Carousel/CarouselNew/Carousel.styles.js +0 -44
  135. package/emotion/es/components/Carousel/CarouselNew/Carousel.tokens.js +0 -15
  136. package/emotion/es/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -409
  137. package/emotion/es/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -219
  138. package/emotion/es/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -31
  139. package/emotion/es/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -41
  140. package/emotion/es/components/Carousel/CarouselNew/ui/Item/Item.js +0 -31
  141. package/emotion/es/components/Carousel/CarouselNew/ui/index.js +0 -2
  142. package/emotion/es/components/Carousel/CarouselNew/variations/_size/base.js +0 -2
  143. package/emotion/es/components/Carousel/CarouselNew/variations/_size/tokens.json +0 -1
  144. package/emotion/es/components/Carousel/CarouselNew/variations/_view/base.js +0 -2
  145. package/emotion/es/components/Carousel/CarouselNew/variations/_view/tokens.json +0 -1
  146. package/emotion/es/components/Carousel/CarouselOld/Carousel.styles.js +0 -42
  147. package/emotion/es/components/Carousel/CarouselOld/index.js +0 -3
  148. package/emotion/es/hooks/useDidMountLayoutEffect.js +0 -11
  149. package/es/components/Carousel/CarouselNew/Carousel.css +0 -12
  150. package/es/components/Carousel/CarouselNew/Carousel.js +0 -89
  151. package/es/components/Carousel/CarouselNew/Carousel.js.map +0 -1
  152. package/es/components/Carousel/CarouselNew/Carousel.styles.js +0 -7
  153. package/es/components/Carousel/CarouselNew/Carousel.styles.js.map +0 -1
  154. package/es/components/Carousel/CarouselNew/Carousel.styles_1gx7oht.css +0 -4
  155. package/es/components/Carousel/CarouselNew/Carousel.tokens.js +0 -18
  156. package/es/components/Carousel/CarouselNew/Carousel.tokens.js.map +0 -1
  157. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -413
  158. package/es/components/Carousel/CarouselNew/hooks/useCarousel.js.map +0 -1
  159. package/es/components/Carousel/CarouselNew/hooks/useDragScroll.js +0 -58
  160. package/es/components/Carousel/CarouselNew/hooks/useDragScroll.js.map +0 -1
  161. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.css +0 -5
  162. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -218
  163. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.js.map +0 -1
  164. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -31
  165. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js.map +0 -1
  166. package/es/components/Carousel/CarouselNew/ui/Dots/Dots.styles_1i4srxq.css +0 -5
  167. package/es/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -44
  168. package/es/components/Carousel/CarouselNew/ui/Dots/utils/index.js.map +0 -1
  169. package/es/components/Carousel/CarouselNew/variations/_size/base.js +0 -5
  170. package/es/components/Carousel/CarouselNew/variations/_size/base.js.map +0 -1
  171. package/es/components/Carousel/CarouselNew/variations/_size/base_x642ct.css +0 -1
  172. package/es/components/Carousel/CarouselNew/variations/_view/base.js +0 -5
  173. package/es/components/Carousel/CarouselNew/variations/_view/base.js.map +0 -1
  174. package/es/components/Carousel/CarouselNew/variations/_view/base_x642ct.css +0 -1
  175. package/es/components/Carousel/CarouselOld/Carousel.css +0 -4
  176. package/es/components/Carousel/CarouselOld/Carousel.js.map +0 -1
  177. package/es/components/Carousel/CarouselOld/Carousel.styles.js.map +0 -1
  178. package/es/components/Carousel/CarouselOld/Carousel.styles_12r304j.css +0 -4
  179. package/es/components/Carousel/CarouselOld/CarouselItem.js.map +0 -1
  180. package/es/components/Carousel/CarouselOld/CarouselItem_uvoxfy.css +0 -1
  181. package/es/components/Carousel/CarouselOld/useCarousel.js.map +0 -1
  182. package/es/components/Carousel/CarouselOld/useDragScroll.js.map +0 -1
  183. package/es/hooks/useDidMountLayoutEffect.js +0 -15
  184. package/es/hooks/useDidMountLayoutEffect.js.map +0 -1
  185. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.js +0 -99
  186. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.styles.js +0 -32
  187. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.tokens.js +0 -21
  188. package/styled-components/cjs/components/Carousel/CarouselNew/Carousel.types.js +0 -5
  189. package/styled-components/cjs/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -419
  190. package/styled-components/cjs/components/Carousel/CarouselNew/hooks/useDragScroll.js +0 -65
  191. package/styled-components/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -229
  192. package/styled-components/cjs/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -24
  193. package/styled-components/cjs/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -47
  194. package/styled-components/cjs/components/Carousel/CarouselNew/ui/Item/Item.js +0 -37
  195. package/styled-components/cjs/components/Carousel/CarouselNew/ui/index.js +0 -27
  196. package/styled-components/cjs/components/Carousel/CarouselNew/variations/_size/base.js +0 -8
  197. package/styled-components/cjs/components/Carousel/CarouselNew/variations/_size/tokens.json +0 -1
  198. package/styled-components/cjs/components/Carousel/CarouselNew/variations/_view/base.js +0 -8
  199. package/styled-components/cjs/components/Carousel/CarouselNew/variations/_view/tokens.json +0 -1
  200. package/styled-components/cjs/components/Carousel/CarouselOld/Carousel.types.js +0 -5
  201. package/styled-components/cjs/components/Carousel/CarouselOld/index.js +0 -32
  202. package/styled-components/cjs/components/Carousel/CarouselOld/useDragScroll.js +0 -65
  203. package/styled-components/cjs/hooks/useDidMountLayoutEffect.js +0 -17
  204. package/styled-components/es/components/Carousel/CarouselNew/Carousel.js +0 -94
  205. package/styled-components/es/components/Carousel/CarouselNew/Carousel.styles.js +0 -24
  206. package/styled-components/es/components/Carousel/CarouselNew/Carousel.tokens.js +0 -15
  207. package/styled-components/es/components/Carousel/CarouselNew/Carousel.types.js +0 -1
  208. package/styled-components/es/components/Carousel/CarouselNew/hooks/useCarousel.js +0 -409
  209. package/styled-components/es/components/Carousel/CarouselNew/hooks/useDragScroll.js +0 -59
  210. package/styled-components/es/components/Carousel/CarouselNew/ui/Dots/Dots.js +0 -219
  211. package/styled-components/es/components/Carousel/CarouselNew/ui/Dots/Dots.styles.js +0 -17
  212. package/styled-components/es/components/Carousel/CarouselNew/ui/Dots/utils/index.js +0 -41
  213. package/styled-components/es/components/Carousel/CarouselNew/ui/Item/Item.js +0 -30
  214. package/styled-components/es/components/Carousel/CarouselNew/ui/index.js +0 -2
  215. package/styled-components/es/components/Carousel/CarouselNew/variations/_size/base.js +0 -2
  216. package/styled-components/es/components/Carousel/CarouselNew/variations/_size/tokens.json +0 -1
  217. package/styled-components/es/components/Carousel/CarouselNew/variations/_view/base.js +0 -2
  218. package/styled-components/es/components/Carousel/CarouselNew/variations/_view/tokens.json +0 -1
  219. package/styled-components/es/components/Carousel/CarouselOld/Carousel.types.js +0 -1
  220. package/styled-components/es/components/Carousel/CarouselOld/index.js +0 -3
  221. package/styled-components/es/components/Carousel/CarouselOld/useDragScroll.js +0 -59
  222. package/styled-components/es/hooks/useDidMountLayoutEffect.js +0 -11
  223. package/types/components/Carousel/CarouselNew/Carousel.d.ts +0 -32
  224. package/types/components/Carousel/CarouselNew/Carousel.d.ts.map +0 -1
  225. package/types/components/Carousel/CarouselNew/Carousel.styles.d.ts +0 -15
  226. package/types/components/Carousel/CarouselNew/Carousel.styles.d.ts.map +0 -1
  227. package/types/components/Carousel/CarouselNew/Carousel.tokens.d.ts +0 -16
  228. package/types/components/Carousel/CarouselNew/Carousel.tokens.d.ts.map +0 -1
  229. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts +0 -167
  230. package/types/components/Carousel/CarouselNew/Carousel.types.d.ts.map +0 -1
  231. package/types/components/Carousel/CarouselNew/hooks/useCarousel.d.ts +0 -61
  232. package/types/components/Carousel/CarouselNew/hooks/useCarousel.d.ts.map +0 -1
  233. package/types/components/Carousel/CarouselNew/hooks/useDragScroll.d.ts.map +0 -1
  234. package/types/components/Carousel/CarouselNew/ui/Dots/Dots.d.ts +0 -4
  235. package/types/components/Carousel/CarouselNew/ui/Dots/Dots.d.ts.map +0 -1
  236. package/types/components/Carousel/CarouselNew/ui/Dots/Dots.styles.d.ts +0 -6
  237. package/types/components/Carousel/CarouselNew/ui/Dots/Dots.styles.d.ts.map +0 -1
  238. package/types/components/Carousel/CarouselNew/ui/Dots/utils/index.d.ts +0 -4
  239. package/types/components/Carousel/CarouselNew/ui/Dots/utils/index.d.ts.map +0 -1
  240. package/types/components/Carousel/CarouselNew/ui/Item/Item.d.ts +0 -4
  241. package/types/components/Carousel/CarouselNew/ui/Item/Item.d.ts.map +0 -1
  242. package/types/components/Carousel/CarouselNew/ui/index.d.ts +0 -3
  243. package/types/components/Carousel/CarouselNew/ui/index.d.ts.map +0 -1
  244. package/types/components/Carousel/CarouselNew/variations/_size/base.d.ts +0 -2
  245. package/types/components/Carousel/CarouselNew/variations/_size/base.d.ts.map +0 -1
  246. package/types/components/Carousel/CarouselNew/variations/_view/base.d.ts +0 -2
  247. package/types/components/Carousel/CarouselNew/variations/_view/base.d.ts.map +0 -1
  248. package/types/components/Carousel/CarouselOld/Carousel.d.ts.map +0 -1
  249. package/types/components/Carousel/CarouselOld/Carousel.styles.d.ts.map +0 -1
  250. package/types/components/Carousel/CarouselOld/Carousel.types.d.ts.map +0 -1
  251. package/types/components/Carousel/CarouselOld/CarouselItem.d.ts.map +0 -1
  252. package/types/components/Carousel/CarouselOld/index.d.ts +0 -5
  253. package/types/components/Carousel/CarouselOld/index.d.ts.map +0 -1
  254. package/types/components/Carousel/CarouselOld/useCarousel.d.ts.map +0 -1
  255. package/types/components/Carousel/CarouselOld/useDragScroll.d.ts +0 -2
  256. package/types/components/Carousel/CarouselOld/useDragScroll.d.ts.map +0 -1
  257. package/types/hooks/useDidMountLayoutEffect.d.ts +0 -2
  258. package/types/hooks/useDidMountLayoutEffect.d.ts.map +0 -1
  259. /package/cjs/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  260. /package/emotion/cjs/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +0 -0
  261. /package/emotion/cjs/components/Carousel/{CarouselNew/Carousel.types.js → Carousel.types.js} +0 -0
  262. /package/emotion/cjs/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  263. /package/emotion/cjs/components/Carousel/{CarouselNew/hooks/useDragScroll.js → useDragScroll.js} +0 -0
  264. /package/emotion/es/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +0 -0
  265. /package/emotion/es/components/Carousel/{CarouselNew/Carousel.types.js → Carousel.types.js} +0 -0
  266. /package/emotion/es/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  267. /package/emotion/es/components/Carousel/{CarouselNew/hooks/useDragScroll.js → useDragScroll.js} +0 -0
  268. /package/es/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  269. /package/styled-components/cjs/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +0 -0
  270. /package/{emotion/cjs/components/Carousel/CarouselOld → styled-components/cjs/components/Carousel}/Carousel.types.js +0 -0
  271. /package/styled-components/cjs/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  272. /package/{emotion/cjs/components/Carousel/CarouselOld → styled-components/cjs/components/Carousel}/useDragScroll.js +0 -0
  273. /package/styled-components/es/components/Carousel/{CarouselOld/Carousel.js → Carousel.js} +0 -0
  274. /package/{emotion/es/components/Carousel/CarouselOld → styled-components/es/components/Carousel}/Carousel.types.js +0 -0
  275. /package/styled-components/es/components/Carousel/{CarouselOld/useCarousel.js → useCarousel.js} +0 -0
  276. /package/{emotion/es/components/Carousel/CarouselOld → styled-components/es/components/Carousel}/useDragScroll.js +0 -0
  277. /package/types/components/Carousel/{CarouselOld/Carousel.styles.d.ts → Carousel.styles.d.ts} +0 -0
  278. /package/types/components/Carousel/{CarouselOld/CarouselItem.d.ts → CarouselItem.d.ts} +0 -0
  279. /package/types/components/Carousel/{CarouselOld/useCarousel.d.ts → useCarousel.d.ts} +0 -0
  280. /package/types/components/Carousel/{CarouselNew/hooks/useDragScroll.d.ts → useDragScroll.d.ts} +0 -0
@@ -1,94 +0,0 @@
1
- var _br;
2
- function _slicedToArray(r, e) { return _arrayWithHoles(r) || _iterableToArrayLimit(r, e) || _unsupportedIterableToArray(r, e) || _nonIterableRest(); }
3
- function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
- function _unsupportedIterableToArray(r, a) { if (r) { if ("string" == typeof r) return _arrayLikeToArray(r, a); var t = {}.toString.call(r).slice(8, -1); return "Object" === t && r.constructor && (t = r.constructor.name), "Map" === t || "Set" === t ? Array.from(r) : "Arguments" === t || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t) ? _arrayLikeToArray(r, a) : void 0; } }
5
- function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length); for (var e = 0, n = Array(a); e < a; e++) n[e] = r[e]; return n; }
6
- function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
7
- function _arrayWithHoles(r) { if (Array.isArray(r)) return r; }
8
- import React, { forwardRef, useState, useCallback, Children } from 'react';
9
- // import { useForkRef } from '@salutejs/plasma-core';
10
-
11
- import { base as sizeCSS } from "./variations/_size/base";
12
- import { base as viewCSS } from "./variations/_view/base";
13
- import { base } from "./Carousel.styles";
14
- // import { base, CarouselWrapper, CarouselTrack } from './Carousel.styles';
15
-
16
- import { useCarousel } from "./hooks/useCarousel";
17
- import { useDragScroll } from "./hooks/useDragScroll";
18
- import { Dots } from "./ui";
19
-
20
- /**
21
- * Компонент для создания списков с прокруткой.
22
- */
23
- export var carouselNewRoot = function carouselNewRoot(Root) {
24
- return /*#__PURE__*/forwardRef(function (_ref,
25
- // @ts-ignore
26
- ref) {
27
- var view = _ref.view,
28
- size = _ref.size,
29
- outerIndex = _ref.index,
30
- scrollAlign = _ref.scrollAlign,
31
- detectActive = _ref.detectActive,
32
- detectThreshold = _ref.detectThreshold,
33
- onIndexChange = _ref.onIndexChange,
34
- children = _ref.children,
35
- _ref$isDragScrollDisa = _ref.isDragScrollDisabled,
36
- isDragScrollDisabled = _ref$isDragScrollDisa === void 0 ? false : _ref$isDragScrollDisa,
37
- paginationOptions = _ref.paginationOptions;
38
- var _useState = useState(0),
39
- _useState2 = _slicedToArray(_useState, 2),
40
- internalIndex = _useState2[0],
41
- setInternalIndex = _useState2[1];
42
- var index = outerIndex !== null && outerIndex !== void 0 ? outerIndex : internalIndex;
43
- var handleChangeIndex = useCallback(function (index) {
44
- if (onIndexChange) {
45
- onIndexChange(index);
46
- }
47
- setInternalIndex(index);
48
- }, [onIndexChange]);
49
-
50
- // const { scrollRef, trackRef } = useCarousel({
51
- var _useCarousel = useCarousel({
52
- index: index,
53
- scrollAlign: scrollAlign,
54
- detectActive: detectActive,
55
- detectThreshold: detectThreshold,
56
- onIndexChange: onIndexChange
57
- }),
58
- scrollRef = _useCarousel.scrollRef;
59
-
60
- // const handleRef = useForkRef(scrollRef, ref);
61
-
62
- useDragScroll(scrollRef, isDragScrollDisabled);
63
- var slidesAmount = Children.count(children);
64
- return /*#__PURE__*/React.createElement(Root, {
65
- size: size,
66
- view: view,
67
- index: index
68
- }, _br || (_br = /*#__PURE__*/React.createElement("br", null)), !(paginationOptions !== null && paginationOptions !== void 0 && paginationOptions.disabled) && /*#__PURE__*/React.createElement(Dots, {
69
- index: index,
70
- onChange: handleChangeIndex,
71
- visibleCount: (paginationOptions === null || paginationOptions === void 0 ? void 0 : paginationOptions.visibleDots) || slidesAmount,
72
- count: slidesAmount,
73
- centered: (paginationOptions === null || paginationOptions === void 0 ? void 0 : paginationOptions.centered) || false
74
- }));
75
- });
76
- };
77
- export var carouselNewConfig = {
78
- name: 'Carousel',
79
- tag: 'div',
80
- layout: carouselNewRoot,
81
- base: base,
82
- variations: {
83
- view: {
84
- css: viewCSS
85
- },
86
- size: {
87
- css: sizeCSS
88
- }
89
- },
90
- defaults: {
91
- view: 'default',
92
- size: 's'
93
- }
94
- };
@@ -1,44 +0,0 @@
1
- import _styled from "@emotion/styled/base";
2
- function _EMOTION_STRINGIFIED_CSS_ERROR__() { return "You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop)."; }
3
- import { css } from '@emotion/react';
4
- export var base = process.env.NODE_ENV === "production" ? {
5
- name: "lb5cd7-plasma-new-hope__base",
6
- styles: "position:relative;padding:20px 0;border-top:2px solid #ff000038;&:before{content:'';position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:#ff000038;};label:plasma-new-hope__base;"
7
- } : {
8
- name: "lb5cd7-plasma-new-hope__base",
9
- styles: "position:relative;padding:20px 0;border-top:2px solid #ff000038;&:before{content:'';position:absolute;left:50%;top:0;bottom:0;width:2px;margin-left:-1px;background:#ff000038;};label:plasma-new-hope__base;",
10
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ2Fyb3VzZWwvQ2Fyb3VzZWxOZXcvQ2Fyb3VzZWwuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUl1QiIsImZpbGUiOiIuLi8uLi8uLi8uLi8uLi9zcmMtZW1vdGlvbi9jb21wb25lbnRzL0Nhcm91c2VsL0Nhcm91c2VsTmV3L0Nhcm91c2VsLnN0eWxlcy50cyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBzdHlsZWQgZnJvbSAnQGVtb3Rpb24vc3R5bGVkJztcbmltcG9ydCB7IGNzcyB9IGZyb20gJ0BlbW90aW9uL3JlYWN0JztcbmltcG9ydCB7IENTU1Byb3BlcnRpZXMgfSBmcm9tICdyZWFjdCc7XG5cbmV4cG9ydCBjb25zdCBiYXNlID0gY3NzYFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBwYWRkaW5nOiAyMHB4IDA7XG4gICAgYm9yZGVyLXRvcDogMnB4IHNvbGlkICNmZjAwMDAzODtcblxuICAgICY6YmVmb3JlIHtcbiAgICAgICAgY29udGVudDogJyc7XG4gICAgICAgIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgICAgICAgbGVmdDogNTAlO1xuICAgICAgICB0b3A6IDA7XG4gICAgICAgIGJvdHRvbTogMDtcbiAgICAgICAgd2lkdGg6IDJweDtcbiAgICAgICAgbWFyZ2luLWxlZnQ6IC0xcHg7XG4gICAgICAgIGJhY2tncm91bmQ6ICNmZjAwMDAzODtcbiAgICB9XG5gO1xuXG4vKipcbiAqINCa0L7QvNC/0L7QvdC10L3RgiDQv9GA0LjQvNC10L3Rj9C10YLRgdGPLCDQtdGB0LvQuCDRgtGA0LXQsdGD0LXRgtGB0Y8g0LrQvtC80L/QtdC90YHQuNGA0L7QstCw0YLRjCDQvtGC0YHRgtGD0L/RiyDQutC+0L3RgtC10LnQvdC10YDQsCDQsiDRgdC10YLQutC1LlxuICog0J/RgNC4INC+0LHQtdGA0YLRi9Cy0LDQvdC40Lgg0LLQvtC60YDRg9CzIGBgQ2Fyb3VzZWxgYCwg0LTQvtCx0LDQstC70Y/QtdGCINC60LDRgNGD0YHQtdC70Lgg0Lgg0LXQtSDQv9GA0L7QutGA0YPRgtC60LUg0LTQvtC/0L7Qu9C90LjRgtC10LvRjNC90YvQtSDQvtGC0YHRgtGD0L/Riy5cbiAqINCh0YLQuNC70LjQt9C+0LLQsNC90L3Ri9C5INC60L7QvNC/0L7QvdC10L3Rgiwg0L7QsdC70LDQtNCw0Y7RidC40Lkg0LLRgdC10LzQuCDRgdCy0L7QudGB0YLQstCw0LzQuCBgYGRpdmBgLlxuICovXG5leHBvcnQgY29uc3QgQ2Fyb3VzZWxHcmlkV3JhcHBlciA9IHN0eWxlZC5kaXZgXG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBtYXJnaW4tbGVmdDogY2FsYyh2YXIoLS1wbGFzbWEtZ3JpZC1tYXJnaW4pICogLTEpO1xuICAgIG1hcmdpbi1yaWdodDogY2FsYyh2YXIoLS1wbGFzbWEtZ3JpZC1tYXJnaW4pICogLTEpO1xuYDtcblxuZXhwb3J0IGNvbnN0IENhcm91c2VsV3JhcHBlciA9IHN0eWxlZC5kaXY8eyBzY3JvbGxTbmFwVHlwZT86ICdtYW5kYXRvcnknIHwgJ3Byb3hpbWl0eScgfCAnbm9uZScgfT5gXG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMDtcbiAgICBwYWRkaW5nOiAwO1xuICAgIGxpc3Qtc3R5bGU6IG5vbmU7XG5cbiAgICAtbXMtb3ZlcmZsb3ctc3R5bGU6IG5vbmU7XG4gICAgc2Nyb2xsYmFyLXdpZHRoOiBub25lO1xuICAgIDo6LXdlYmtpdC1zY3JvbGxiYXIge1xuICAgICAgICBkaXNwbGF5OiBub25lO1xuICAgIH1cblxuICAgIG92ZXJmbG93LXg6IGF1dG87XG4gICAgb3ZlcmZsb3cteTogaGlkZGVuO1xuXG4gICAgc2Nyb2xsLWJlaGF2aW9yOiBzbW9vdGg7XG4gICAgc2Nyb2xsLXNuYXAtdHlwZTogJHsoeyBzY3JvbGxTbmFwVHlwZSB9KSA9PiBgeCAke3Njcm9sbFNuYXBUeXBlfWB9O1xuXG4gICAgJHtDYXJvdXNlbEdyaWRXcmFwcGVyfSAmIHtcbiAgICAgICAgc2Nyb2xsLXBhZGRpbmc6IDAgdmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKTtcbiAgICAgICAgcGFkZGluZy1sZWZ0OiB2YXIoLS1wbGFzbWEtZ3JpZC1tYXJnaW4pO1xuICAgIH1cblxuICAgIHVzZXItc2VsZWN0OiBub25lO1xuICAgIC13ZWJraXQtdGFwLWhpZ2hsaWdodC1jb2xvcjogcmdiYSgwLCAwLCAwLCAwKTtcbmA7XG5cbmV4cG9ydCBjb25zdCBDYXJvdXNlbFRyYWNrID0gc3R5bGVkLmRpdjx7IGdhcD86IENTU1Byb3BlcnRpZXNbJ2dhcCddIH0+YFxuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGZsZXgtZGlyZWN0aW9uOiByb3c7XG4gICAgZ2FwOiAkeyh7IGdhcCB9KSA9PiBnYXAgfHwgMH07XG5gO1xuIl19 */",
11
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
12
- };
13
-
14
- /**
15
- * Компонент применяется, если требуется компенсировать отступы контейнера в сетке.
16
- * При обертывании вокруг ``Carousel``, добавляет карусели и ее прокрутке дополнительные отступы.
17
- * Стилизованный компонент, обладающий всеми свойствами ``div``.
18
- */
19
- export var CarouselGridWrapper = /*#__PURE__*/_styled("div", {
20
- target: "e1tpidja2",
21
- label: "plasma-new-hope__CarouselGridWrapper"
22
- })(process.env.NODE_ENV === "production" ? {
23
- name: "1y1n8k7",
24
- styles: "overflow:hidden;margin-left:calc(var(--plasma-grid-margin) * -1);margin-right:calc(var(--plasma-grid-margin) * -1)"
25
- } : {
26
- name: "1y1n8k7",
27
- styles: "overflow:hidden;margin-left:calc(var(--plasma-grid-margin) * -1);margin-right:calc(var(--plasma-grid-margin) * -1)",
28
- map: "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ2Fyb3VzZWwvQ2Fyb3VzZWxOZXcvQ2Fyb3VzZWwuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTBCNkMiLCJmaWxlIjoiLi4vLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9DYXJvdXNlbC9DYXJvdXNlbE5ldy9DYXJvdXNlbC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmYwMDAwMzg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwMzg7XG4gICAgfVxuYDtcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0L/RgNC40LzQtdC90Y/QtdGC0YHRjywg0LXRgdC70Lgg0YLRgNC10LHRg9C10YLRgdGPINC60L7QvNC/0LXQvdGB0LjRgNC+0LLQsNGC0Ywg0L7RgtGB0YLRg9C/0Ysg0LrQvtC90YLQtdC50L3QtdGA0LAg0LIg0YHQtdGC0LrQtS5cbiAqINCf0YDQuCDQvtCx0LXRgNGC0YvQstCw0L3QuNC4INCy0L7QutGA0YPQsyBgYENhcm91c2VsYGAsINC00L7QsdCw0LLQu9GP0LXRgiDQutCw0YDRg9GB0LXQu9C4INC4INC10LUg0L/RgNC+0LrRgNGD0YLQutC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0LUg0L7RgtGB0YLRg9C/0YsuXG4gKiDQodGC0LjQu9C40LfQvtCy0LDQvdC90YvQuSDQutC+0LzQv9C+0L3QtdC90YIsINC+0LHQu9Cw0LTQsNGO0YnQuNC5INCy0YHQtdC80Lgg0YHQstC+0LnRgdGC0LLQsNC80LggYGBkaXZgYC5cbiAqL1xuZXhwb3J0IGNvbnN0IENhcm91c2VsR3JpZFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbmA7XG5cbmV4cG9ydCBjb25zdCBDYXJvdXNlbFdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgc2Nyb2xsU25hcFR5cGU/OiAnbWFuZGF0b3J5JyB8ICdwcm94aW1pdHknIHwgJ25vbmUnIH0+YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6ICR7KHsgc2Nyb2xsU25hcFR5cGUgfSkgPT4gYHggJHtzY3JvbGxTbmFwVHlwZX1gfTtcblxuICAgICR7Q2Fyb3VzZWxHcmlkV3JhcHBlcn0gJiB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nOiAwIHZhcigtLXBsYXNtYS1ncmlkLW1hcmdpbik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5gO1xuXG5leHBvcnQgY29uc3QgQ2Fyb3VzZWxUcmFjayA9IHN0eWxlZC5kaXY8eyBnYXA/OiBDU1NQcm9wZXJ0aWVzWydnYXAnXSB9PmBcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogJHsoeyBnYXAgfSkgPT4gZ2FwIHx8IDB9O1xuYDtcbiJdfQ== */",
29
- toString: _EMOTION_STRINGIFIED_CSS_ERROR__
30
- });
31
- export var CarouselWrapper = /*#__PURE__*/_styled("div", {
32
- target: "e1tpidja1",
33
- label: "plasma-new-hope__CarouselWrapper"
34
- })("position:relative;margin:0;padding:0;list-style:none;-ms-overflow-style:none;scrollbar-width:none;::-webkit-scrollbar{display:none;}overflow-x:auto;overflow-y:hidden;scroll-behavior:smooth;scroll-snap-type:", function (_ref) {
35
- var scrollSnapType = _ref.scrollSnapType;
36
- return "x ".concat(scrollSnapType);
37
- }, ";", CarouselGridWrapper, " &{scroll-padding:0 var(--plasma-grid-margin);padding-left:var(--plasma-grid-margin);}user-select:none;-webkit-tap-highlight-color:rgba(0, 0, 0, 0);" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ2Fyb3VzZWwvQ2Fyb3VzZWxOZXcvQ2Fyb3VzZWwuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQWdDa0ciLCJmaWxlIjoiLi4vLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9DYXJvdXNlbC9DYXJvdXNlbE5ldy9DYXJvdXNlbC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmYwMDAwMzg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwMzg7XG4gICAgfVxuYDtcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0L/RgNC40LzQtdC90Y/QtdGC0YHRjywg0LXRgdC70Lgg0YLRgNC10LHRg9C10YLRgdGPINC60L7QvNC/0LXQvdGB0LjRgNC+0LLQsNGC0Ywg0L7RgtGB0YLRg9C/0Ysg0LrQvtC90YLQtdC50L3QtdGA0LAg0LIg0YHQtdGC0LrQtS5cbiAqINCf0YDQuCDQvtCx0LXRgNGC0YvQstCw0L3QuNC4INCy0L7QutGA0YPQsyBgYENhcm91c2VsYGAsINC00L7QsdCw0LLQu9GP0LXRgiDQutCw0YDRg9GB0LXQu9C4INC4INC10LUg0L/RgNC+0LrRgNGD0YLQutC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0LUg0L7RgtGB0YLRg9C/0YsuXG4gKiDQodGC0LjQu9C40LfQvtCy0LDQvdC90YvQuSDQutC+0LzQv9C+0L3QtdC90YIsINC+0LHQu9Cw0LTQsNGO0YnQuNC5INCy0YHQtdC80Lgg0YHQstC+0LnRgdGC0LLQsNC80LggYGBkaXZgYC5cbiAqL1xuZXhwb3J0IGNvbnN0IENhcm91c2VsR3JpZFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbmA7XG5cbmV4cG9ydCBjb25zdCBDYXJvdXNlbFdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgc2Nyb2xsU25hcFR5cGU/OiAnbWFuZGF0b3J5JyB8ICdwcm94aW1pdHknIHwgJ25vbmUnIH0+YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6ICR7KHsgc2Nyb2xsU25hcFR5cGUgfSkgPT4gYHggJHtzY3JvbGxTbmFwVHlwZX1gfTtcblxuICAgICR7Q2Fyb3VzZWxHcmlkV3JhcHBlcn0gJiB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nOiAwIHZhcigtLXBsYXNtYS1ncmlkLW1hcmdpbik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5gO1xuXG5leHBvcnQgY29uc3QgQ2Fyb3VzZWxUcmFjayA9IHN0eWxlZC5kaXY8eyBnYXA/OiBDU1NQcm9wZXJ0aWVzWydnYXAnXSB9PmBcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogJHsoeyBnYXAgfSkgPT4gZ2FwIHx8IDB9O1xuYDtcbiJdfQ== */"));
38
- export var CarouselTrack = /*#__PURE__*/_styled("div", {
39
- target: "e1tpidja0",
40
- label: "plasma-new-hope__CarouselTrack"
41
- })("display:inline-flex;flex-direction:row;gap:", function (_ref2) {
42
- var gap = _ref2.gap;
43
- return gap || 0;
44
- }, ";" + (process.env.NODE_ENV === "production" ? "" : "/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3NyYy1lbW90aW9uL2NvbXBvbmVudHMvQ2Fyb3VzZWwvQ2Fyb3VzZWxOZXcvQ2Fyb3VzZWwuc3R5bGVzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQTJEdUUiLCJmaWxlIjoiLi4vLi4vLi4vLi4vLi4vc3JjLWVtb3Rpb24vY29tcG9uZW50cy9DYXJvdXNlbC9DYXJvdXNlbE5ldy9DYXJvdXNlbC5zdHlsZXMudHMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgc3R5bGVkIGZyb20gJ0BlbW90aW9uL3N0eWxlZCc7XG5pbXBvcnQgeyBjc3MgfSBmcm9tICdAZW1vdGlvbi9yZWFjdCc7XG5pbXBvcnQgeyBDU1NQcm9wZXJ0aWVzIH0gZnJvbSAncmVhY3QnO1xuXG5leHBvcnQgY29uc3QgYmFzZSA9IGNzc2BcbiAgICBwb3NpdGlvbjogcmVsYXRpdmU7XG4gICAgcGFkZGluZzogMjBweCAwO1xuICAgIGJvcmRlci10b3A6IDJweCBzb2xpZCAjZmYwMDAwMzg7XG5cbiAgICAmOmJlZm9yZSB7XG4gICAgICAgIGNvbnRlbnQ6ICcnO1xuICAgICAgICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gICAgICAgIGxlZnQ6IDUwJTtcbiAgICAgICAgdG9wOiAwO1xuICAgICAgICBib3R0b206IDA7XG4gICAgICAgIHdpZHRoOiAycHg7XG4gICAgICAgIG1hcmdpbi1sZWZ0OiAtMXB4O1xuICAgICAgICBiYWNrZ3JvdW5kOiAjZmYwMDAwMzg7XG4gICAgfVxuYDtcblxuLyoqXG4gKiDQmtC+0LzQv9C+0L3QtdC90YIg0L/RgNC40LzQtdC90Y/QtdGC0YHRjywg0LXRgdC70Lgg0YLRgNC10LHRg9C10YLRgdGPINC60L7QvNC/0LXQvdGB0LjRgNC+0LLQsNGC0Ywg0L7RgtGB0YLRg9C/0Ysg0LrQvtC90YLQtdC50L3QtdGA0LAg0LIg0YHQtdGC0LrQtS5cbiAqINCf0YDQuCDQvtCx0LXRgNGC0YvQstCw0L3QuNC4INCy0L7QutGA0YPQsyBgYENhcm91c2VsYGAsINC00L7QsdCw0LLQu9GP0LXRgiDQutCw0YDRg9GB0LXQu9C4INC4INC10LUg0L/RgNC+0LrRgNGD0YLQutC1INC00L7Qv9C+0LvQvdC40YLQtdC70YzQvdGL0LUg0L7RgtGB0YLRg9C/0YsuXG4gKiDQodGC0LjQu9C40LfQvtCy0LDQvdC90YvQuSDQutC+0LzQv9C+0L3QtdC90YIsINC+0LHQu9Cw0LTQsNGO0YnQuNC5INCy0YHQtdC80Lgg0YHQstC+0LnRgdGC0LLQsNC80LggYGBkaXZgYC5cbiAqL1xuZXhwb3J0IGNvbnN0IENhcm91c2VsR3JpZFdyYXBwZXIgPSBzdHlsZWQuZGl2YFxuICAgIG92ZXJmbG93OiBoaWRkZW47XG4gICAgbWFyZ2luLWxlZnQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbiAgICBtYXJnaW4tcmlnaHQ6IGNhbGModmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKSAqIC0xKTtcbmA7XG5cbmV4cG9ydCBjb25zdCBDYXJvdXNlbFdyYXBwZXIgPSBzdHlsZWQuZGl2PHsgc2Nyb2xsU25hcFR5cGU/OiAnbWFuZGF0b3J5JyB8ICdwcm94aW1pdHknIHwgJ25vbmUnIH0+YFxuICAgIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgICBtYXJnaW46IDA7XG4gICAgcGFkZGluZzogMDtcbiAgICBsaXN0LXN0eWxlOiBub25lO1xuXG4gICAgLW1zLW92ZXJmbG93LXN0eWxlOiBub25lO1xuICAgIHNjcm9sbGJhci13aWR0aDogbm9uZTtcbiAgICA6Oi13ZWJraXQtc2Nyb2xsYmFyIHtcbiAgICAgICAgZGlzcGxheTogbm9uZTtcbiAgICB9XG5cbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIG92ZXJmbG93LXk6IGhpZGRlbjtcblxuICAgIHNjcm9sbC1iZWhhdmlvcjogc21vb3RoO1xuICAgIHNjcm9sbC1zbmFwLXR5cGU6ICR7KHsgc2Nyb2xsU25hcFR5cGUgfSkgPT4gYHggJHtzY3JvbGxTbmFwVHlwZX1gfTtcblxuICAgICR7Q2Fyb3VzZWxHcmlkV3JhcHBlcn0gJiB7XG4gICAgICAgIHNjcm9sbC1wYWRkaW5nOiAwIHZhcigtLXBsYXNtYS1ncmlkLW1hcmdpbik7XG4gICAgICAgIHBhZGRpbmctbGVmdDogdmFyKC0tcGxhc21hLWdyaWQtbWFyZ2luKTtcbiAgICB9XG5cbiAgICB1c2VyLXNlbGVjdDogbm9uZTtcbiAgICAtd2Via2l0LXRhcC1oaWdobGlnaHQtY29sb3I6IHJnYmEoMCwgMCwgMCwgMCk7XG5gO1xuXG5leHBvcnQgY29uc3QgQ2Fyb3VzZWxUcmFjayA9IHN0eWxlZC5kaXY8eyBnYXA/OiBDU1NQcm9wZXJ0aWVzWydnYXAnXSB9PmBcbiAgICBkaXNwbGF5OiBpbmxpbmUtZmxleDtcbiAgICBmbGV4LWRpcmVjdGlvbjogcm93O1xuICAgIGdhcDogJHsoeyBnYXAgfSkgPT4gZ2FwIHx8IDB9O1xuYDtcbiJdfQ== */"));
@@ -1,15 +0,0 @@
1
- export var classes = {
2
- dot: 'dot',
3
- active: 'dot-active',
4
- animating: 'dot-animating',
5
- animateIn: 'dot-animate-in',
6
- animateOut: 'dot-animate-out',
7
- temporaryNatural: 'dot-temporary-natural',
8
- shrinking: 'dot-shrinking',
9
- availableDotsLeft: 'dot-available-dots-left',
10
- availableDotsRight: 'dot-available-dots-right'
11
- };
12
- export var tokens = {
13
- paginationDotBackground: '--plasma-carousel-pagination-dot-background',
14
- paginationDotActiveBackground: '--plasma-carousel-pagination-dot-active-background'
15
- };
@@ -1,409 +0,0 @@
1
- import { useEffect, useCallback, useRef, useMemo } from 'react';
2
- import throttle from 'lodash.throttle';
3
- /**
4
- * Подсчет смещения из-за паддингов.
5
- */
6
- export var getCalculatedOffset = function getCalculatedOffset(scrollEl, trackEl, axis) {
7
- var paddingProp = axis === 'x' ? 'paddingLeft' : 'paddingTop';
8
- return parseInt(getComputedStyle(scrollEl)[paddingProp], 10) + parseInt(getComputedStyle(trackEl)[paddingProp], 10);
9
- };
10
- var positionModByScrollAlign = function positionModByScrollAlign(_ref) {
11
- var scrollAlign = _ref.scrollAlign,
12
- position = _ref.position,
13
- carouselSize = _ref.carouselSize,
14
- itemSize = _ref.itemSize,
15
- offset = _ref.offset,
16
- scrollStart = _ref.scrollStart,
17
- axis = _ref.axis;
18
- if (scrollAlign === 'start') {
19
- var inaccuracy = 1;
20
- var paddingOffset = axis === 'y' ? offset - itemSize / 2 + inaccuracy : 0;
21
- return position + paddingOffset;
22
- }
23
- if (scrollAlign === 'center') {
24
- return position - carouselSize / 2 + itemSize / 2;
25
- }
26
- if (scrollAlign === 'end') {
27
- return position - carouselSize + itemSize + offset;
28
- }
29
- if (scrollAlign === 'activeDirection') {
30
- if (position >= scrollStart + carouselSize - itemSize) {
31
- return position - carouselSize + itemSize + offset;
32
- }
33
- if (position > scrollStart) {
34
- return scrollStart;
35
- }
36
- }
37
- return position;
38
- };
39
-
40
- /**
41
- * Подсчет скролла до переданного индекса.
42
- */
43
- export var getCalculatedPos = function getCalculatedPos(_ref2) {
44
- var scrollEl = _ref2.scrollEl,
45
- items = _ref2.items,
46
- axis = _ref2.axis,
47
- index = _ref2.index,
48
- offset = _ref2.offset,
49
- scrollAlign = _ref2.scrollAlign;
50
- var position = scrollAlign === 'center' ? offset : 0;
51
- var carouselSize;
52
- var itemSize;
53
- var scrollStart;
54
- if (items.item(index) === null) {
55
- return position;
56
- }
57
- for (var i = 0; i < index; i++) {
58
- if (axis === 'x') {
59
- var _items$item$offsetWid, _items$item;
60
- position += (_items$item$offsetWid = (_items$item = items.item(i)) === null || _items$item === void 0 ? void 0 : _items$item.offsetWidth) !== null && _items$item$offsetWid !== void 0 ? _items$item$offsetWid : 0;
61
- } else {
62
- var _items$item$offsetHei, _items$item2;
63
- position += (_items$item$offsetHei = (_items$item2 = items.item(i)) === null || _items$item2 === void 0 ? void 0 : _items$item2.offsetHeight) !== null && _items$item$offsetHei !== void 0 ? _items$item$offsetHei : 0;
64
- }
65
- }
66
- if (axis === 'x') {
67
- var _items$item$offsetWid2, _items$item3;
68
- carouselSize = scrollEl.offsetWidth;
69
- itemSize = (_items$item$offsetWid2 = (_items$item3 = items.item(index)) === null || _items$item3 === void 0 ? void 0 : _items$item3.offsetWidth) !== null && _items$item$offsetWid2 !== void 0 ? _items$item$offsetWid2 : 0;
70
- scrollStart = scrollEl.scrollLeft;
71
- } else {
72
- var _items$item$offsetHei2, _items$item4;
73
- carouselSize = scrollEl.offsetHeight;
74
- itemSize = (_items$item$offsetHei2 = (_items$item4 = items.item(index)) === null || _items$item4 === void 0 ? void 0 : _items$item4.offsetHeight) !== null && _items$item$offsetHei2 !== void 0 ? _items$item$offsetHei2 : 0;
75
- scrollStart = scrollEl.scrollTop;
76
- }
77
- return positionModByScrollAlign({
78
- scrollAlign: scrollAlign,
79
- position: position,
80
- carouselSize: carouselSize,
81
- itemSize: itemSize,
82
- offset: offset,
83
- scrollStart: scrollStart,
84
- axis: axis
85
- });
86
- };
87
- var DEFAULT_DURATION = 300;
88
-
89
- // https://css-tricks.com/emulating-css-timing-functions-javascript/
90
- var tfs = {
91
- linear: function linear(t) {
92
- return t;
93
- },
94
- // eslint-disable-next-line
95
- easeIn: function easeIn(t) {
96
- return Math.pow(t, 1.675);
97
- },
98
- // eslint-disable-next-line
99
- easeOut: function easeOut(t) {
100
- return 1 - Math.pow(1 - t, 1.675);
101
- },
102
- easeInOut: function easeInOut(t) {
103
- return 0.5 * (Math.sin((t - 0.5) * Math.PI) + 1);
104
- }
105
- };
106
- /**
107
- * Плавная прокрутка по горизонтали
108
- * @param {Element} elem
109
- * @param {number} pos
110
- * @param {number} duration
111
- * @param {string} timingFunction
112
- */
113
- export var animatedScrollToX = function animatedScrollToX(elem, pos) {
114
- var duration = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : DEFAULT_DURATION;
115
- var timingFunction = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 'easeInOut';
116
- var startTime;
117
- var startX = elem.scrollLeft;
118
- var endX = Math.max(0, Math.min(elem.scrollWidth - elem.clientWidth, pos));
119
- var handleNewAnimationFrame = function handleNewAnimationFrame() {
120
- startTime = startTime || Date.now();
121
- var timePos = Math.min(1, Math.max(1, Date.now() - startTime) / duration);
122
- var scrollPos = tfs[timingFunction](timePos);
123
- var left = startX + (endX - startX) * scrollPos;
124
- elem.scrollTo({
125
- left: left
126
- });
127
- if (timePos !== 1) window.requestAnimationFrame(handleNewAnimationFrame);
128
- };
129
- window.requestAnimationFrame(handleNewAnimationFrame);
130
- };
131
-
132
- /**
133
- * Прокрутка к указанной позиции с анимацией или без.
134
- */
135
- export var scrollToPos = function scrollToPos(_ref3) {
136
- var scrollEl = _ref3.scrollEl,
137
- pos = _ref3.pos,
138
- axis = _ref3.axis,
139
- animated = _ref3.animated,
140
- duration = _ref3.duration,
141
- timingFunction = _ref3.timingFunction;
142
- if (axis === 'x' && Math.abs(pos - scrollEl.scrollLeft) > 1) {
143
- if (animated) {
144
- animatedScrollToX(scrollEl, pos, duration, timingFunction);
145
- } else {
146
- scrollEl.scrollTo({
147
- left: pos
148
- });
149
- }
150
- }
151
- };
152
- var round = function round(n) {
153
- return Math.round(n * 100) / 100;
154
- };
155
-
156
- /**
157
- * Получить позицию (слот) айтема в каруселе.
158
- * Каждый айтем имеет свой слот относительно вьюпорта карусели.
159
- */
160
- export var getItemSlot = function getItemSlot(itemIndex, itemEnd, itemSize, scrollStart, scrollSize, scrollAlign) {
161
- var prevIndex = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : 0;
162
- var offset = arguments.length > 7 && arguments[7] !== undefined ? arguments[7] : 0;
163
- /**
164
- * Граница и центр скролла (видимой части).
165
- * Смещение + размер.
166
- */
167
- var scrollEnd = scrollStart + scrollSize;
168
- var scrollCenter = scrollStart + scrollSize / 2;
169
- var itemCenter = itemEnd - itemSize / 2;
170
- if (scrollAlign === 'center') {
171
- return round((itemCenter - scrollCenter) / itemSize);
172
- }
173
- if (scrollAlign === 'start') {
174
- return round((itemEnd - itemSize - scrollStart) / itemSize);
175
- }
176
- if (scrollAlign === 'end') {
177
- return round((itemEnd - (scrollSize + scrollStart)) / itemSize);
178
- }
179
- if (scrollAlign === 'activeDirection') {
180
- var prevStart = offset + itemSize * prevIndex;
181
- var prevEnd = prevStart + itemSize;
182
- var prevVisible = prevEnd > scrollStart && prevStart < scrollEnd;
183
- if (!prevVisible) {
184
- if (prevIndex < itemIndex) {
185
- return round((itemEnd - (scrollSize + scrollStart)) / itemSize);
186
- }
187
- return round((itemEnd - itemSize - scrollStart) / itemSize);
188
- }
189
- }
190
- return null;
191
- };
192
- export function getCarouselItems(track) {
193
- return track.children;
194
- }
195
- export function useDebouncedFunction(func, delay, cleanUp) {
196
- var timeoutRef = useRef();
197
-
198
- /**
199
- * Очистка таймера
200
- */
201
- function clearTimer() {
202
- if (timeoutRef.current) {
203
- clearTimeout(timeoutRef.current);
204
- timeoutRef.current = undefined;
205
- }
206
- }
207
-
208
- /**
209
- * Очищаем таймер при анмаунте компонента, если cleanUp выставлен в true
210
- * и тем самым отменяем последний запланированный вызов
211
- */
212
- useEffect(function () {
213
- return cleanUp ? clearTimer : undefined;
214
- }, [cleanUp]);
215
- return function () {
216
- for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {
217
- args[_key] = arguments[_key];
218
- }
219
- clearTimer();
220
- timeoutRef.current = setTimeout(function () {
221
- return func.apply(void 0, args);
222
- }, delay);
223
- };
224
- }
225
- var THROTTLE_DEFAULT_MS = 100;
226
- var DEBOUNCE_DEFAULT_MS = 150;
227
- export var useCarousel = function useCarousel(_ref4) {
228
- var index = _ref4.index,
229
- _ref4$detectActive = _ref4.detectActive,
230
- detectActive = _ref4$detectActive === void 0 ? false : _ref4$detectActive,
231
- _ref4$detectThreshold = _ref4.detectThreshold,
232
- detectThreshold = _ref4$detectThreshold === void 0 ? 0.5 : _ref4$detectThreshold,
233
- _ref4$scrollAlign = _ref4.scrollAlign,
234
- scrollAlign = _ref4$scrollAlign === void 0 ? 'center' : _ref4$scrollAlign,
235
- onIndexChange = _ref4.onIndexChange,
236
- _ref4$throttleMs = _ref4.throttleMs,
237
- throttleMs = _ref4$throttleMs === void 0 ? THROTTLE_DEFAULT_MS : _ref4$throttleMs,
238
- _ref4$debounceMs = _ref4.debounceMs,
239
- debounceMs = _ref4$debounceMs === void 0 ? DEBOUNCE_DEFAULT_MS : _ref4$debounceMs;
240
- var prevIndex = useRef(null);
241
- var offset = useRef(0);
242
- var scrollRef = useRef(null);
243
- var trackRef = useRef(null);
244
- var axis = 'x';
245
-
246
- /**
247
- * Для того, чтобы не спамить изменениями индекса.
248
- * Задержка дебаунса слегка больше, чем у тротлинга.
249
- * Таким образом, событие срабатывает при завершении скролла.
250
- */
251
- var debouncedOnIndexChange = useDebouncedFunction(function (i) {
252
- return onIndexChange === null || onIndexChange === void 0 ? void 0 : onIndexChange(i);
253
- }, debounceMs);
254
-
255
- /**
256
- * Вычисление центрального элемента.
257
- * Подсчет: от 0 до 1, какое количество ширины/высоты
258
- * каждого элемента находится по центру скролла.
259
- */
260
- var throttledDetectActiveItem = useMemo(function () {
261
- return throttle(function () {
262
- if (!detectActive || scrollRef.current === null || trackRef.current === null) {
263
- return;
264
- }
265
-
266
- /**
267
- * Правая (или нижняя для Оу) граница элемента.
268
- */
269
- var itemEdge = offset.current;
270
-
271
- /**
272
- * Смещение (отрицательный или положительный отступ)
273
- * и размер карусели (для Ox - ширина, для Oy - высота).
274
- */
275
- var scrollPos = scrollRef.current[axis === 'x' ? 'scrollLeft' : 'scrollTop'];
276
- var scrollSize = scrollRef.current[axis === 'x' ? 'offsetWidth' : 'offsetHeight'];
277
-
278
- /**
279
- * Граница скролла (видимой части).
280
- * Смещение + размер.
281
- */
282
- var scrollEdge = scrollPos + scrollSize;
283
- var items = getCarouselItems(trackRef.current);
284
-
285
- /**
286
- * Проходим по всему списку, суммируя ширины элементов,
287
- * пока не найдем один элемент, чей центр будет в центре карусели.
288
- */
289
- for (var itemIndex = 0; itemIndex < items.length; itemIndex++) {
290
- var _prevIndex$current;
291
- var item = items.item(itemIndex);
292
- if (item === null) {
293
- // eslint-disable-next-line no-continue
294
- continue;
295
- }
296
-
297
- /**
298
- * Для Ox - ширина, для Oy - высота.
299
- */
300
- var itemSize = item[axis === 'x' ? 'offsetWidth' : 'offsetHeight'];
301
-
302
- /**
303
- * Все элементы правее вьюпорта выпадают из процедуры.
304
- * Сравниваем по предыдущему элементу.
305
- * [ ... ] ...|n| <- Левый край элемента за пределами начала видимой части
306
- */
307
- if (itemEdge > scrollEdge) {
308
- // eslint-disable-next-line no-continue
309
- continue;
310
- }
311
- itemEdge += itemSize;
312
-
313
- /**
314
- * Все элементы левее вьюпорта выпадают из процедуры.
315
- * Сравниваем по текущему элементу.
316
- * Правый край элемента за пределами начала видимой части -> |p|... [ ... ]
317
- */
318
- if (scrollPos > itemEdge) {
319
- // eslint-disable-next-line no-continue
320
- continue;
321
- }
322
- var itemSlot = getItemSlot(itemIndex, itemEdge, itemSize, scrollPos, scrollSize, scrollAlign, (_prevIndex$current = prevIndex.current) !== null && _prevIndex$current !== void 0 ? _prevIndex$current : 0, offset.current);
323
- if (itemSlot !== null) {
324
- if (detectThreshold && Math.abs(itemSlot) <= detectThreshold) {
325
- debouncedOnIndexChange === null || debouncedOnIndexChange === void 0 || debouncedOnIndexChange(itemIndex);
326
- }
327
- }
328
- }
329
- }, throttleMs);
330
- }, [axis, debouncedOnIndexChange, detectActive, detectThreshold, scrollAlign, throttleMs]);
331
-
332
- /**
333
- * Прокрутка до нужной позиции индекса.
334
- */
335
- var toIndex = useCallback(function (i) {
336
- var scrollEl = scrollRef.current;
337
- var items = trackRef.current ? getCarouselItems(trackRef.current) : null;
338
- if (scrollEl && items && items.length > 0 && i >= 0) {
339
- scrollToPos({
340
- scrollEl: scrollEl,
341
- pos: getCalculatedPos({
342
- scrollEl: scrollEl,
343
- items: items,
344
- axis: axis,
345
- index: i,
346
- offset: offset.current,
347
- scrollAlign: scrollAlign
348
- }),
349
- axis: axis
350
- });
351
- prevIndex.current = i;
352
- }
353
- }, [axis, scrollAlign]);
354
- useEffect(function () {
355
- if (scrollRef.current && trackRef.current) {
356
- offset.current = getCalculatedOffset(scrollRef.current, trackRef.current, axis);
357
- }
358
- }, [axis]);
359
-
360
- /**
361
- * Операции на маунте/анмаунте компонента.
362
- * Создать слушатели событи и т.п.
363
- */
364
- useEffect(function () {
365
- var carouselElement = scrollRef.current;
366
- if (carouselElement) {
367
- carouselElement.addEventListener('scroll', throttledDetectActiveItem);
368
- }
369
- return function () {
370
- if (carouselElement) {
371
- carouselElement.removeEventListener('scroll', throttledDetectActiveItem);
372
- }
373
- };
374
- }, [throttledDetectActiveItem]);
375
-
376
- /**
377
- * Нужно вызвать только при первом рендере
378
- */
379
- // useEffect(() => {
380
- // requestAnimationFrame(() => {
381
- // /**
382
- // * Прокрутка до начального индекса.
383
- // */
384
- // toIndex(index);
385
- //
386
- // /**
387
- // * Если на момент запуска карусель уже находится на нужной позиции,
388
- // * событие скролла не произойдет, не сработает и определение центра,
389
- // * необходимо вызвать его вручную.
390
- // */
391
- // throttledDetectActiveItem();
392
- // });
393
- //
394
- // // eslint-disable-next-line react-hooks/exhaustive-deps
395
- // }, []);
396
-
397
- /**
398
- * Прокрутка до нужной позиции индекса, если индекс изменился.
399
- */
400
- useEffect(function () {
401
- if (index !== prevIndex.current) {
402
- toIndex(index);
403
- }
404
- }, [index, toIndex]);
405
- return {
406
- scrollRef: scrollRef,
407
- trackRef: trackRef
408
- };
409
- };