@studiometa/ui 0.2.13 → 0.2.15

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 (361) hide show
  1. package/atoms/AnchorScrollTo/AnchorScrollTo.cjs +4 -3
  2. package/atoms/AnchorScrollTo/AnchorScrollTo.cjs.map +7 -0
  3. package/atoms/AnchorScrollTo/AnchorScrollTo.d.ts +8 -15
  4. package/atoms/AnchorScrollTo/AnchorScrollTo.js +21 -1
  5. package/atoms/AnchorScrollTo/AnchorScrollTo.js.map +7 -0
  6. package/atoms/AnchorScrollTo/index.cjs +21 -0
  7. package/atoms/AnchorScrollTo/index.cjs.map +7 -0
  8. package/atoms/AnchorScrollTo/index.d.ts +1 -0
  9. package/atoms/AnchorScrollTo/index.js +2 -0
  10. package/atoms/AnchorScrollTo/index.js.map +7 -0
  11. package/atoms/Cursor/Cursor.cjs +8 -3
  12. package/atoms/Cursor/Cursor.cjs.map +7 -0
  13. package/atoms/Cursor/Cursor.d.ts +19 -117
  14. package/atoms/Cursor/Cursor.js +103 -1
  15. package/atoms/Cursor/Cursor.js.map +7 -0
  16. package/atoms/Cursor/index.cjs +21 -0
  17. package/atoms/Cursor/index.cjs.map +7 -0
  18. package/atoms/Cursor/index.d.ts +1 -0
  19. package/atoms/Cursor/index.js +2 -0
  20. package/atoms/Cursor/index.js.map +7 -0
  21. package/atoms/Figure/Figure.cjs +16 -9
  22. package/atoms/Figure/Figure.cjs.map +7 -0
  23. package/atoms/Figure/Figure.d.ts +18 -53
  24. package/atoms/Figure/Figure.js +51 -1
  25. package/atoms/Figure/Figure.js.map +7 -0
  26. package/atoms/Figure/FigureTwicPics.cjs +11 -10
  27. package/atoms/Figure/FigureTwicPics.cjs.map +7 -0
  28. package/atoms/Figure/FigureTwicPics.d.ts +16 -37
  29. package/atoms/Figure/FigureTwicPics.js +46 -1
  30. package/atoms/Figure/FigureTwicPics.js.map +7 -0
  31. package/atoms/Figure/index.cjs +5 -14
  32. package/atoms/Figure/index.cjs.map +7 -0
  33. package/atoms/Figure/index.d.ts +2 -2
  34. package/atoms/Figure/index.js +3 -1
  35. package/atoms/Figure/index.js.map +7 -0
  36. package/atoms/LargeText/LargeText.cjs +8 -3
  37. package/atoms/LargeText/LargeText.cjs.map +7 -0
  38. package/atoms/LargeText/LargeText.d.ts +19 -40
  39. package/atoms/LargeText/LargeText.js +60 -1
  40. package/atoms/LargeText/LargeText.js.map +7 -0
  41. package/atoms/LargeText/index.cjs +21 -0
  42. package/atoms/LargeText/index.cjs.map +7 -0
  43. package/atoms/LargeText/index.d.ts +1 -0
  44. package/atoms/LargeText/index.js +2 -0
  45. package/atoms/LargeText/index.js.map +7 -0
  46. package/atoms/LazyInclude/LazyInclude.cjs +3 -2
  47. package/atoms/LazyInclude/LazyInclude.cjs.map +7 -0
  48. package/atoms/LazyInclude/LazyInclude.d.ts +17 -36
  49. package/atoms/LazyInclude/LazyInclude.js +41 -1
  50. package/atoms/LazyInclude/LazyInclude.js.map +7 -0
  51. package/atoms/LazyInclude/index.cjs +21 -0
  52. package/atoms/LazyInclude/index.cjs.map +7 -0
  53. package/atoms/LazyInclude/index.d.ts +1 -0
  54. package/atoms/LazyInclude/index.js +2 -0
  55. package/atoms/LazyInclude/index.js.map +7 -0
  56. package/atoms/Prefetch/AbstractPrefetch.cjs +7 -6
  57. package/atoms/Prefetch/AbstractPrefetch.cjs.map +7 -0
  58. package/atoms/Prefetch/AbstractPrefetch.d.ts +12 -35
  59. package/atoms/Prefetch/AbstractPrefetch.js +52 -1
  60. package/atoms/Prefetch/AbstractPrefetch.js.map +7 -0
  61. package/atoms/Prefetch/PrefetchWhenOver.cjs +6 -8
  62. package/atoms/Prefetch/PrefetchWhenOver.cjs.map +7 -0
  63. package/atoms/Prefetch/PrefetchWhenOver.d.ts +8 -14
  64. package/atoms/Prefetch/PrefetchWhenOver.js +14 -1
  65. package/atoms/Prefetch/PrefetchWhenOver.js.map +7 -0
  66. package/atoms/Prefetch/PrefetchWhenVisible.cjs +6 -8
  67. package/atoms/Prefetch/PrefetchWhenVisible.cjs.map +7 -0
  68. package/atoms/Prefetch/PrefetchWhenVisible.d.ts +10 -14
  69. package/atoms/Prefetch/PrefetchWhenVisible.js +15 -1
  70. package/atoms/Prefetch/PrefetchWhenVisible.js.map +7 -0
  71. package/atoms/Prefetch/index.cjs +6 -16
  72. package/atoms/Prefetch/index.cjs.map +7 -0
  73. package/atoms/Prefetch/index.d.ts +3 -3
  74. package/atoms/Prefetch/index.js +4 -1
  75. package/atoms/Prefetch/index.js.map +7 -0
  76. package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs +18 -14
  77. package/atoms/ScrollAnimation/AbstractScrollAnimation.cjs.map +7 -0
  78. package/atoms/ScrollAnimation/AbstractScrollAnimation.d.ts +19 -89
  79. package/atoms/ScrollAnimation/AbstractScrollAnimation.js +62 -1
  80. package/atoms/ScrollAnimation/AbstractScrollAnimation.js.map +7 -0
  81. package/atoms/ScrollAnimation/ScrollAnimation.cjs +6 -14
  82. package/atoms/ScrollAnimation/ScrollAnimation.cjs.map +7 -0
  83. package/atoms/ScrollAnimation/ScrollAnimation.d.ts +13 -51
  84. package/atoms/ScrollAnimation/ScrollAnimation.js +16 -1
  85. package/atoms/ScrollAnimation/ScrollAnimation.js.map +7 -0
  86. package/atoms/ScrollAnimation/ScrollAnimationChild.cjs +31 -10
  87. package/atoms/ScrollAnimation/ScrollAnimationChild.cjs.map +7 -0
  88. package/atoms/ScrollAnimation/ScrollAnimationChild.d.ts +19 -6
  89. package/atoms/ScrollAnimation/ScrollAnimationChild.js +45 -1
  90. package/atoms/ScrollAnimation/ScrollAnimationChild.js.map +7 -0
  91. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs +7 -9
  92. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.cjs.map +7 -0
  93. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.d.ts +8 -2
  94. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js +12 -1
  95. package/atoms/ScrollAnimation/ScrollAnimationChildWithEase.js.map +7 -0
  96. package/atoms/ScrollAnimation/ScrollAnimationParent.cjs +9 -8
  97. package/atoms/ScrollAnimation/ScrollAnimationParent.cjs.map +7 -0
  98. package/atoms/ScrollAnimation/ScrollAnimationParent.d.ts +14 -26
  99. package/atoms/ScrollAnimation/ScrollAnimationParent.js +22 -1
  100. package/atoms/ScrollAnimation/ScrollAnimationParent.js.map +7 -0
  101. package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs +7 -9
  102. package/atoms/ScrollAnimation/ScrollAnimationWithEase.cjs.map +7 -0
  103. package/atoms/ScrollAnimation/ScrollAnimationWithEase.d.ts +15 -2
  104. package/atoms/ScrollAnimation/ScrollAnimationWithEase.js +12 -1
  105. package/atoms/ScrollAnimation/ScrollAnimationWithEase.js.map +7 -0
  106. package/atoms/ScrollAnimation/animationScrollWithEase.cjs +9 -5
  107. package/atoms/ScrollAnimation/animationScrollWithEase.cjs.map +7 -0
  108. package/atoms/ScrollAnimation/animationScrollWithEase.d.ts +10 -8
  109. package/atoms/ScrollAnimation/animationScrollWithEase.js +31 -1
  110. package/atoms/ScrollAnimation/animationScrollWithEase.js.map +7 -0
  111. package/atoms/ScrollAnimation/index.cjs +10 -24
  112. package/atoms/ScrollAnimation/index.cjs.map +7 -0
  113. package/atoms/ScrollAnimation/index.d.ts +7 -7
  114. package/atoms/ScrollAnimation/index.js +8 -1
  115. package/atoms/ScrollAnimation/index.js.map +7 -0
  116. package/atoms/ScrollReveal/ScrollReveal.cjs +6 -3
  117. package/atoms/ScrollReveal/ScrollReveal.cjs.map +7 -0
  118. package/atoms/ScrollReveal/ScrollReveal.d.ts +16 -59
  119. package/atoms/ScrollReveal/ScrollReveal.js +47 -1
  120. package/atoms/ScrollReveal/ScrollReveal.js.map +7 -0
  121. package/atoms/ScrollReveal/index.cjs +4 -12
  122. package/atoms/ScrollReveal/index.cjs.map +7 -0
  123. package/atoms/ScrollReveal/index.d.ts +1 -1
  124. package/atoms/ScrollReveal/index.js +2 -1
  125. package/atoms/ScrollReveal/index.js.map +7 -0
  126. package/atoms/index.cjs +6 -18
  127. package/atoms/index.cjs.map +7 -0
  128. package/atoms/index.d.ts +8 -8
  129. package/atoms/index.js +9 -1
  130. package/atoms/index.js.map +7 -0
  131. package/decorators/index.cjs +4 -12
  132. package/decorators/index.cjs.map +7 -0
  133. package/decorators/index.d.ts +1 -1
  134. package/decorators/index.js +2 -1
  135. package/decorators/index.js.map +7 -0
  136. package/decorators/withTransition.cjs +23 -17
  137. package/decorators/withTransition.cjs.map +7 -0
  138. package/decorators/withTransition.d.ts +21 -33
  139. package/decorators/withTransition.js +50 -1
  140. package/decorators/withTransition.js.map +7 -0
  141. package/index.cjs +2 -1
  142. package/index.cjs.map +7 -0
  143. package/index.d.ts +5 -5
  144. package/index.js +6 -1
  145. package/index.js.map +7 -0
  146. package/molecules/Accordion/Accordion.cjs +8 -10
  147. package/molecules/Accordion/Accordion.cjs.map +7 -0
  148. package/molecules/Accordion/Accordion.d.ts +5 -23
  149. package/molecules/Accordion/Accordion.js +14 -1
  150. package/molecules/Accordion/Accordion.js.map +7 -0
  151. package/molecules/Accordion/AccordionCore.cjs +7 -8
  152. package/molecules/Accordion/AccordionCore.cjs.map +7 -0
  153. package/molecules/Accordion/AccordionCore.d.ts +22 -70
  154. package/molecules/Accordion/AccordionCore.js +27 -1
  155. package/molecules/Accordion/AccordionCore.js.map +7 -0
  156. package/molecules/Accordion/AccordionItem.cjs +39 -23
  157. package/molecules/Accordion/AccordionItem.cjs.map +7 -0
  158. package/molecules/Accordion/AccordionItem.d.ts +24 -94
  159. package/molecules/Accordion/AccordionItem.js +146 -1
  160. package/molecules/Accordion/AccordionItem.js.map +7 -0
  161. package/molecules/Accordion/index.cjs +22 -0
  162. package/molecules/Accordion/index.cjs.map +7 -0
  163. package/molecules/Accordion/index.d.ts +2 -0
  164. package/molecules/Accordion/index.js +3 -0
  165. package/molecules/Accordion/index.js.map +7 -0
  166. package/molecules/Menu/Menu.cjs +7 -10
  167. package/molecules/Menu/Menu.cjs.map +7 -0
  168. package/molecules/Menu/Menu.d.ts +24 -84
  169. package/molecules/Menu/Menu.js +108 -1
  170. package/molecules/Menu/Menu.js.map +7 -0
  171. package/molecules/Menu/MenuBtn.cjs +4 -4
  172. package/molecules/Menu/MenuBtn.cjs.map +7 -0
  173. package/molecules/Menu/MenuBtn.d.ts +7 -9
  174. package/molecules/Menu/MenuBtn.js +22 -1
  175. package/molecules/Menu/MenuBtn.js.map +7 -0
  176. package/molecules/Menu/MenuList.cjs +9 -9
  177. package/molecules/Menu/MenuList.cjs.map +7 -0
  178. package/molecules/Menu/MenuList.d.ts +16 -53
  179. package/molecules/Menu/MenuList.js +104 -1
  180. package/molecules/Menu/MenuList.js.map +7 -0
  181. package/molecules/Menu/index.cjs +6 -16
  182. package/molecules/Menu/index.cjs.map +7 -0
  183. package/molecules/Menu/index.d.ts +3 -3
  184. package/molecules/Menu/index.js +4 -1
  185. package/molecules/Menu/index.js.map +7 -0
  186. package/molecules/Modal/Modal.cjs +35 -13
  187. package/molecules/Modal/Modal.cjs.map +7 -0
  188. package/molecules/Modal/Modal.d.ts +69 -140
  189. package/molecules/Modal/Modal.js +150 -1
  190. package/molecules/Modal/Modal.js.map +7 -0
  191. package/molecules/Modal/ModalWithTransition.cjs +5 -7
  192. package/molecules/Modal/ModalWithTransition.cjs.map +7 -0
  193. package/molecules/Modal/ModalWithTransition.d.ts +6 -22
  194. package/molecules/Modal/ModalWithTransition.js +41 -1
  195. package/molecules/Modal/ModalWithTransition.js.map +7 -0
  196. package/molecules/Modal/index.cjs +22 -0
  197. package/molecules/Modal/index.cjs.map +7 -0
  198. package/molecules/Modal/index.d.ts +2 -0
  199. package/molecules/Modal/index.js +3 -0
  200. package/molecules/Modal/index.js.map +7 -0
  201. package/molecules/Panel/Panel.cjs +38 -26
  202. package/molecules/Panel/Panel.cjs.map +7 -0
  203. package/molecules/Panel/Panel.d.ts +22 -21
  204. package/molecules/Panel/Panel.js +98 -1
  205. package/molecules/Panel/Panel.js.map +7 -0
  206. package/molecules/Panel/index.cjs +21 -0
  207. package/molecules/Panel/index.cjs.map +7 -0
  208. package/molecules/Panel/index.d.ts +1 -0
  209. package/molecules/Panel/index.js +2 -0
  210. package/molecules/Panel/index.js.map +7 -0
  211. package/molecules/Slider/AbstractSliderChild.cjs +8 -9
  212. package/molecules/Slider/AbstractSliderChild.cjs.map +7 -0
  213. package/molecules/Slider/AbstractSliderChild.d.ts +11 -30
  214. package/molecules/Slider/AbstractSliderChild.js +43 -1
  215. package/molecules/Slider/AbstractSliderChild.js.map +7 -0
  216. package/molecules/Slider/Slider.cjs +31 -18
  217. package/molecules/Slider/Slider.cjs.map +7 -0
  218. package/molecules/Slider/Slider.d.ts +40 -157
  219. package/molecules/Slider/Slider.js +271 -1
  220. package/molecules/Slider/Slider.js.map +7 -0
  221. package/molecules/Slider/SliderBtn.cjs +5 -7
  222. package/molecules/Slider/SliderBtn.cjs.map +7 -0
  223. package/molecules/Slider/SliderBtn.d.ts +12 -23
  224. package/molecules/Slider/SliderBtn.js +29 -1
  225. package/molecules/Slider/SliderBtn.js.map +7 -0
  226. package/molecules/Slider/SliderCount.cjs +5 -7
  227. package/molecules/Slider/SliderCount.cjs.map +7 -0
  228. package/molecules/Slider/SliderCount.d.ts +10 -16
  229. package/molecules/Slider/SliderCount.js +14 -1
  230. package/molecules/Slider/SliderCount.js.map +7 -0
  231. package/molecules/Slider/SliderDots.cjs +5 -7
  232. package/molecules/Slider/SliderDots.cjs.map +7 -0
  233. package/molecules/Slider/SliderDots.d.ts +11 -31
  234. package/molecules/Slider/SliderDots.js +24 -1
  235. package/molecules/Slider/SliderDots.js.map +7 -0
  236. package/molecules/Slider/SliderDrag.cjs +3 -2
  237. package/molecules/Slider/SliderDrag.cjs.map +7 -0
  238. package/molecules/Slider/SliderDrag.d.ts +12 -30
  239. package/molecules/Slider/SliderDrag.js +29 -1
  240. package/molecules/Slider/SliderDrag.js.map +7 -0
  241. package/molecules/Slider/SliderItem.cjs +7 -3
  242. package/molecules/Slider/SliderItem.cjs.map +7 -0
  243. package/molecules/Slider/SliderItem.d.ts +21 -33
  244. package/molecules/Slider/SliderItem.js +85 -1
  245. package/molecules/Slider/SliderItem.js.map +7 -0
  246. package/molecules/Slider/SliderProgress.cjs +5 -7
  247. package/molecules/Slider/SliderProgress.cjs.map +7 -0
  248. package/molecules/Slider/SliderProgress.d.ts +10 -25
  249. package/molecules/Slider/SliderProgress.js +21 -1
  250. package/molecules/Slider/SliderProgress.js.map +7 -0
  251. package/molecules/Slider/index.cjs +11 -26
  252. package/molecules/Slider/index.cjs.map +7 -0
  253. package/molecules/Slider/index.d.ts +8 -8
  254. package/molecules/Slider/index.js +9 -1
  255. package/molecules/Slider/index.js.map +7 -0
  256. package/molecules/Sticky/Sticky.cjs +12 -8
  257. package/molecules/Sticky/Sticky.cjs.map +7 -0
  258. package/molecules/Sticky/Sticky.d.ts +30 -68
  259. package/molecules/Sticky/Sticky.js +101 -1
  260. package/molecules/Sticky/Sticky.js.map +7 -0
  261. package/molecules/Sticky/index.cjs +21 -0
  262. package/molecules/Sticky/index.cjs.map +7 -0
  263. package/molecules/Sticky/index.d.ts +1 -0
  264. package/molecules/Sticky/index.js +2 -0
  265. package/molecules/Sticky/index.js.map +7 -0
  266. package/molecules/TableOfContent/TableOfContent.cjs +6 -8
  267. package/molecules/TableOfContent/TableOfContent.cjs.map +7 -0
  268. package/molecules/TableOfContent/TableOfContent.d.ts +19 -41
  269. package/molecules/TableOfContent/TableOfContent.js +37 -1
  270. package/molecules/TableOfContent/TableOfContent.js.map +7 -0
  271. package/molecules/TableOfContent/TableOfContentAnchor.cjs +7 -5
  272. package/molecules/TableOfContent/TableOfContentAnchor.cjs.map +7 -0
  273. package/molecules/TableOfContent/TableOfContentAnchor.d.ts +14 -17
  274. package/molecules/TableOfContent/TableOfContentAnchor.js +35 -1
  275. package/molecules/TableOfContent/TableOfContentAnchor.js.map +7 -0
  276. package/molecules/TableOfContent/index.cjs +5 -14
  277. package/molecules/TableOfContent/index.cjs.map +7 -0
  278. package/molecules/TableOfContent/index.d.ts +2 -2
  279. package/molecules/TableOfContent/index.js +3 -1
  280. package/molecules/TableOfContent/index.js.map +7 -0
  281. package/molecules/Tabs/Tabs.cjs +40 -22
  282. package/molecules/Tabs/Tabs.cjs.map +7 -0
  283. package/molecules/Tabs/Tabs.d.ts +28 -90
  284. package/molecules/Tabs/Tabs.js +115 -1
  285. package/molecules/Tabs/Tabs.js.map +7 -0
  286. package/molecules/Tabs/index.cjs +21 -0
  287. package/molecules/Tabs/index.cjs.map +7 -0
  288. package/molecules/Tabs/index.d.ts +1 -0
  289. package/molecules/Tabs/index.js +2 -0
  290. package/molecules/Tabs/index.js.map +7 -0
  291. package/molecules/index.cjs +8 -24
  292. package/molecules/index.cjs.map +7 -0
  293. package/molecules/index.d.ts +9 -10
  294. package/molecules/index.js +10 -1
  295. package/molecules/index.js.map +7 -0
  296. package/organisms/Frame/Frame.cjs +21 -43
  297. package/organisms/Frame/Frame.cjs.map +7 -0
  298. package/organisms/Frame/Frame.d.ts +21 -98
  299. package/organisms/Frame/Frame.js +155 -1
  300. package/organisms/Frame/Frame.js.map +7 -0
  301. package/organisms/Frame/FrameAnchor.cjs +3 -2
  302. package/organisms/Frame/FrameAnchor.cjs.map +7 -0
  303. package/organisms/Frame/FrameAnchor.d.ts +7 -16
  304. package/organisms/Frame/FrameAnchor.js +13 -1
  305. package/organisms/Frame/FrameAnchor.js.map +7 -0
  306. package/organisms/Frame/FrameForm.cjs +3 -2
  307. package/organisms/Frame/FrameForm.cjs.map +7 -0
  308. package/organisms/Frame/FrameForm.d.ts +10 -16
  309. package/organisms/Frame/FrameForm.js +13 -1
  310. package/organisms/Frame/FrameForm.js.map +7 -0
  311. package/organisms/Frame/FrameTarget.cjs +15 -9
  312. package/organisms/Frame/FrameTarget.cjs.map +7 -0
  313. package/organisms/Frame/FrameTarget.d.ts +17 -26
  314. package/organisms/Frame/FrameTarget.js +70 -1
  315. package/organisms/Frame/FrameTarget.js.map +7 -0
  316. package/organisms/Frame/index.cjs +7 -18
  317. package/organisms/Frame/index.cjs.map +7 -0
  318. package/organisms/Frame/index.d.ts +4 -4
  319. package/organisms/Frame/index.js +5 -1
  320. package/organisms/Frame/index.js.map +7 -0
  321. package/organisms/index.cjs +2 -1
  322. package/organisms/index.cjs.map +7 -0
  323. package/organisms/index.d.ts +1 -1
  324. package/organisms/index.js +2 -1
  325. package/organisms/index.js.map +7 -0
  326. package/package.json +2 -2
  327. package/primitives/Draggable/Draggable.cjs +3 -2
  328. package/primitives/Draggable/Draggable.cjs.map +7 -0
  329. package/primitives/Draggable/Draggable.d.ts +10 -11
  330. package/primitives/Draggable/Draggable.js +25 -1
  331. package/primitives/Draggable/Draggable.js.map +7 -0
  332. package/primitives/Draggable/index.cjs +21 -0
  333. package/primitives/Draggable/index.cjs.map +7 -0
  334. package/primitives/Draggable/index.d.ts +1 -0
  335. package/primitives/Draggable/index.js +2 -0
  336. package/primitives/Draggable/index.js.map +7 -0
  337. package/primitives/Sentinel/Sentinel.cjs +3 -2
  338. package/primitives/Sentinel/Sentinel.cjs.map +7 -0
  339. package/primitives/Sentinel/Sentinel.d.ts +6 -5
  340. package/primitives/Sentinel/Sentinel.js +10 -1
  341. package/primitives/Sentinel/Sentinel.js.map +7 -0
  342. package/primitives/Sentinel/index.cjs +21 -0
  343. package/primitives/Sentinel/index.cjs.map +7 -0
  344. package/primitives/Sentinel/index.d.ts +1 -0
  345. package/primitives/Sentinel/index.js +2 -0
  346. package/primitives/Sentinel/index.js.map +7 -0
  347. package/primitives/Transition/Transition.cjs +13 -3
  348. package/primitives/Transition/Transition.cjs.map +7 -0
  349. package/primitives/Transition/Transition.d.ts +13 -7
  350. package/primitives/Transition/Transition.js +11 -1
  351. package/primitives/Transition/Transition.js.map +7 -0
  352. package/primitives/Transition/index.cjs +21 -0
  353. package/primitives/Transition/index.cjs.map +7 -0
  354. package/primitives/Transition/index.d.ts +1 -0
  355. package/primitives/Transition/index.js +2 -0
  356. package/primitives/Transition/index.js.map +7 -0
  357. package/primitives/index.cjs +6 -16
  358. package/primitives/index.cjs.map +7 -0
  359. package/primitives/index.d.ts +3 -3
  360. package/primitives/index.js +4 -1
  361. package/primitives/index.js.map +7 -0
@@ -1 +1,271 @@
1
- import{Base as d}from"@studiometa/js-toolkit";import{clamp as c,inertiaFinalValue as u,nextFrame as o,isDev as f}from"@studiometa/js-toolkit/utils";import x from"./SliderDrag.js";import g from"./SliderItem.js";class I extends d{static config={name:"Slider",refs:["wrapper","debug"],emits:["goto","index"],components:{SliderItem:g,SliderDrag:x},options:{mode:{type:String,default:"left"},fitBounds:Boolean,contain:Boolean,sensitivity:{type:Number,default:1},dropSensitivity:{type:Number,default:2}}};__distanceX=0;__initialX=0;__currentIndex=0;get currentIndex(){return this.__currentIndex}set currentIndex(t){this.currentSliderItem.disactivate(),this.$emit("index",t),this.__currentIndex=t,this.currentSliderItem.activate()}states=[];origins={left:0,center:0,right:0};hasFocus=!1;get currentState(){return this.states[this.currentIndex]}get firstState(){return this.states[0]}get lastState(){return this.states[this.states.length-1]}get containMinState(){return this.getStateValueByMode(this.firstState.x,"left")}get containMaxState(){return this.getStateValueByMode(this.lastState.x,"right")}get indexMax(){return this.$children.SliderItem.length-1}get currentSliderItem(){return this.$children.SliderItem[this.currentIndex]}getStates(){const{wrapper:t}=this.$refs,e=t.getBoundingClientRect();this.origins={left:e.left,center:e.x+e.width/2,right:e.x+e.width};const s=this.$children.SliderItem.map(i=>({x:{left:(i.rect.x-this.origins.left)*-1,center:(i.rect.x+i.rect.width/2-this.origins.center)*-1,right:(i.rect.x+i.rect.width-this.origins.right)*-1}}));if(this.$options.contain){const{mode:i}=this.$options;if(i==="left"){const n=this.$children.SliderItem.at(-1),a=s.find(r=>{const h=n.rect.x-this.origins.left+n.rect.width+r.x.left,l=e.width-h;return l>0?(r.x.left=Math.min(r.x.left+l,0),!0):!1});if(a)return s.map(r=>(r.x.left=Math.max(r.x.left,a.x.left),r))}if(i==="right"){const n=s.findIndex(r=>r.x.right<=0),a=n<0?s.at(-1):s[n-1];return s.map(r=>(r.x.right=n<0?a.x.right:Math.min(r.x.right,0),r))}i==="center"&&f&&console.warn(`[${this.$id}]`,"The `center` mode is not yet compatible with the `contain` mode.")}return s}getOriginByMode(t){return this.origins[t??this.$options.mode]}getStateValueByMode(t,e){return t[e??this.$options.mode]}mounted(){this.states=this.getStates(),this.prepareInvisibleItems(),this.goTo(this.currentIndex)}resized(){o(()=>{this.states=this.getStates(),o(()=>{this.prepareInvisibleItems(),this.goTo(this.currentIndex)})})}goNext(){this.currentIndex+1>this.indexMax||this.goTo(this.currentIndex+1)}goPrev(){this.currentIndex-1<0||this.goTo(this.currentIndex-1)}goTo(t,{withInstantMove:e=!0}={}){if(t<0||t>this.indexMax)throw new Error("Index out of bound.");const s=this.getStateValueByMode(this.currentState.x),i=this.getStateValueByMode(this.states[t].x),n=this.getVisibleItems(i),a=this.getInvisibleItems(i);n.forEach(r=>{s!==i&&e&&r.moveInstantly(s),o(()=>r.move(i))}),a.forEach(r=>{r.moveInstantly(i)}),this.currentIndex=t,this.$emit("goto",t)}onSliderDragStart(){this.__initialX=this.currentSliderItem?this.currentSliderItem.x:0,this.__distanceX=this.__initialX}onSliderDragDrag(t){Math.abs(t.delta.y)>Math.abs(t.delta.x)||(this.__distanceX=this.__initialX+t.distance.x*this.$options.sensitivity,this.getVisibleItems(this.__distanceX).forEach(e=>{e.moveInstantly(this.__distanceX)}))}onSliderDragDrop(t){if(Math.abs(t.delta.y)>Math.abs(t.delta.x))return;let e=c(u(this.__distanceX,t.delta.x*this.$options.dropSensitivity),0,this.getStateValueByMode(this.lastState.x));const s=this.states.map(a=>Math.abs(e-this.getStateValueByMode(a.x))),i=Math.min(...s),n=s.findIndex(a=>a===i);this.$options.fitBounds?this.goTo(n,{withInstantMove:!1}):(this.$options.contain&&(e=Math.min(this.containMinState,e),e=Math.max(this.containMaxState,e)),this.$children.SliderItem.forEach(a=>{a.move(e)}),this.currentIndex=n)}onWrapperFocus(){this.hasFocus=!0}onWrapperBlur(){this.hasFocus=!1}keyed({LEFT:t,RIGHT:e,isDown:s}){this.hasFocus&&s&&(t?this.goPrev():e&&this.goNext())}prepareInvisibleItems(){const t=this.states[this.currentIndex],e=[],s=[];this.getInvisibleItems(this.getStateValueByMode(t.x)).forEach((i,n)=>{if(n>this.currentIndex){e.push(i);return}n<this.currentIndex&&s.push(i)}),e.forEach(i=>{const n=this.getStateWhereItemWillBeInvisible(i);n&&i.moveInstantly(this.getStateValueByMode(n.x))}),s.forEach(i=>{const n=this.getStateWhereItemWillBeInvisible(i,{reversed:!0});n&&i.moveInstantly(this.getStateValueByMode(n.x))})}getStateWhereItemWillBeInvisible(t,{reversed:e=!1}={}){const s=this.states.filter(h=>t.willBeVisible(this.getStateValueByMode(h.x))),i=s[0],n=s[s.length-1],a=this.states.findIndex(h=>this.getStateValueByMode(h.x)===this.getStateValueByMode(i.x)),r=this.states.findIndex(h=>h.x===n.x);return e?this.states[r+1]:this.states[a-1]}getVisibleItems(t){return this.$children.SliderItem.filter(e=>e.isVisible||e.willBeVisible(t))}getInvisibleItems(t){return this.$children.SliderItem.filter(e=>!e.isVisible&&!e.willBeVisible(t))}}export{I as default};
1
+ import { Base } from "@studiometa/js-toolkit";
2
+ import { clamp, inertiaFinalValue, nextFrame, isDev } from "@studiometa/js-toolkit/utils";
3
+ import { SliderDrag } from "./SliderDrag.js";
4
+ import { SliderItem } from "./SliderItem.js";
5
+ class Slider extends Base {
6
+ static config = {
7
+ name: "Slider",
8
+ refs: ["wrapper", "debug"],
9
+ emits: ["goto", "index"],
10
+ components: {
11
+ SliderItem,
12
+ SliderDrag
13
+ },
14
+ options: {
15
+ mode: { type: String, default: "left" },
16
+ fitBounds: Boolean,
17
+ contain: Boolean,
18
+ sensitivity: { type: Number, default: 1 },
19
+ dropSensitivity: { type: Number, default: 2 }
20
+ }
21
+ };
22
+ __distanceX = 0;
23
+ __initialX = 0;
24
+ __currentIndex = 0;
25
+ get currentIndex() {
26
+ return this.__currentIndex;
27
+ }
28
+ set currentIndex(value) {
29
+ this.currentSliderItem.disactivate();
30
+ this.$emit("index", value);
31
+ this.__currentIndex = value;
32
+ this.currentSliderItem.activate();
33
+ }
34
+ states = [];
35
+ origins = {
36
+ left: 0,
37
+ center: 0,
38
+ right: 0
39
+ };
40
+ hasFocus = false;
41
+ get currentState() {
42
+ return this.states[this.currentIndex];
43
+ }
44
+ get firstState() {
45
+ return this.states[0];
46
+ }
47
+ get lastState() {
48
+ return this.states.at(-1);
49
+ }
50
+ get containMinState() {
51
+ return this.getStateValueByMode(this.firstState.x, "left");
52
+ }
53
+ get containMaxState() {
54
+ return this.getStateValueByMode(this.lastState.x, "right");
55
+ }
56
+ get indexMax() {
57
+ return this.$children.SliderItem.length - 1;
58
+ }
59
+ get currentSliderItem() {
60
+ return this.$children.SliderItem[this.currentIndex];
61
+ }
62
+ getStates() {
63
+ const { wrapper } = this.$refs;
64
+ const originRect = wrapper.getBoundingClientRect();
65
+ this.origins = {
66
+ left: originRect.left,
67
+ center: originRect.x + originRect.width / 2,
68
+ right: originRect.x + originRect.width
69
+ };
70
+ const states = this.$children.SliderItem.map((item) => ({
71
+ x: {
72
+ left: (item.rect.x - this.origins.left) * -1,
73
+ center: (item.rect.x + item.rect.width / 2 - this.origins.center) * -1,
74
+ right: (item.rect.x + item.rect.width - this.origins.right) * -1
75
+ }
76
+ }));
77
+ if (this.$options.contain) {
78
+ const { mode } = this.$options;
79
+ if (mode === "left") {
80
+ const lastChild = this.$children.SliderItem.at(-1);
81
+ const maxState = states.find((state) => {
82
+ const lastChildPosition = lastChild.rect.x - this.origins.left + lastChild.rect.width + state.x.left;
83
+ const diffWithWrapperBound = originRect.width - lastChildPosition;
84
+ if (diffWithWrapperBound > 0) {
85
+ state.x.left = Math.min(state.x.left + diffWithWrapperBound, 0);
86
+ return true;
87
+ }
88
+ return false;
89
+ });
90
+ if (maxState) {
91
+ return states.map((state) => {
92
+ state.x.left = Math.max(state.x.left, maxState.x.left);
93
+ return state;
94
+ });
95
+ }
96
+ }
97
+ if (mode === "right") {
98
+ const maxStateIndex = states.findIndex((state) => state.x.right <= 0);
99
+ const maxState = maxStateIndex < 0 ? states.at(-1) : states[maxStateIndex - 1];
100
+ return states.map((state) => {
101
+ state.x.right = maxStateIndex < 0 ? maxState.x.right : Math.min(state.x.right, 0);
102
+ return state;
103
+ });
104
+ }
105
+ if (mode === "center" && isDev) {
106
+ console.warn(
107
+ `[${this.$id}]`,
108
+ "The `center` mode is not yet compatible with the `contain` mode."
109
+ );
110
+ }
111
+ }
112
+ return states;
113
+ }
114
+ getOriginByMode(mode) {
115
+ return this.origins[mode ?? this.$options.mode];
116
+ }
117
+ getStateValueByMode(state, mode) {
118
+ return state[mode ?? this.$options.mode];
119
+ }
120
+ mounted() {
121
+ this.states = this.getStates();
122
+ this.prepareInvisibleItems();
123
+ this.goTo(this.currentIndex);
124
+ }
125
+ resized() {
126
+ nextFrame(() => {
127
+ this.states = this.getStates();
128
+ nextFrame(() => {
129
+ this.prepareInvisibleItems();
130
+ this.goTo(this.currentIndex);
131
+ });
132
+ });
133
+ }
134
+ goNext() {
135
+ if (this.currentIndex + 1 > this.indexMax) {
136
+ return;
137
+ }
138
+ this.goTo(this.currentIndex + 1);
139
+ }
140
+ goPrev() {
141
+ if (this.currentIndex - 1 < 0) {
142
+ return;
143
+ }
144
+ this.goTo(this.currentIndex - 1);
145
+ }
146
+ goTo(index, { withInstantMove = true } = {}) {
147
+ if (index < 0 || index > this.indexMax) {
148
+ throw new Error("Index out of bound.");
149
+ }
150
+ const currentState = this.getStateValueByMode(this.currentState.x);
151
+ const state = this.getStateValueByMode(this.states[index].x);
152
+ const itemsToMove = this.getVisibleItems(state);
153
+ const invisibleItemsToMoveInstantly = this.getInvisibleItems(state);
154
+ itemsToMove.forEach((item) => {
155
+ if (currentState !== state && withInstantMove) {
156
+ item.moveInstantly(currentState);
157
+ }
158
+ nextFrame(() => item.move(state));
159
+ });
160
+ invisibleItemsToMoveInstantly.forEach((item) => {
161
+ item.moveInstantly(state);
162
+ });
163
+ this.currentIndex = index;
164
+ this.$emit("goto", index);
165
+ }
166
+ onSliderDragStart() {
167
+ this.__initialX = this.currentSliderItem ? this.currentSliderItem.x : 0;
168
+ this.__distanceX = this.__initialX;
169
+ }
170
+ onSliderDragDrag(props) {
171
+ if (Math.abs(props.delta.y) > Math.abs(props.delta.x)) {
172
+ return;
173
+ }
174
+ this.__distanceX = this.__initialX + props.distance.x * this.$options.sensitivity;
175
+ this.getVisibleItems(this.__distanceX).forEach((item) => {
176
+ item.moveInstantly(this.__distanceX);
177
+ });
178
+ }
179
+ onSliderDragDrop(props) {
180
+ if (Math.abs(props.delta.y) > Math.abs(props.delta.x)) {
181
+ return;
182
+ }
183
+ let finalX = clamp(
184
+ inertiaFinalValue(this.__distanceX, props.delta.x * this.$options.dropSensitivity),
185
+ 0,
186
+ this.getStateValueByMode(this.lastState.x)
187
+ );
188
+ const absoluteDifferencesBetweenDistanceAndState = this.states.map(
189
+ (state) => Math.abs(finalX - this.getStateValueByMode(state.x))
190
+ );
191
+ const minimumDifference = Math.min(...absoluteDifferencesBetweenDistanceAndState);
192
+ const closestIndex = absoluteDifferencesBetweenDistanceAndState.indexOf(minimumDifference);
193
+ if (this.$options.fitBounds) {
194
+ this.goTo(closestIndex, { withInstantMove: false });
195
+ } else {
196
+ if (this.$options.contain) {
197
+ finalX = Math.min(this.containMinState, finalX);
198
+ finalX = Math.max(this.containMaxState, finalX);
199
+ }
200
+ this.$children.SliderItem.forEach((item) => {
201
+ item.move(finalX);
202
+ });
203
+ this.currentIndex = closestIndex;
204
+ }
205
+ }
206
+ onWrapperFocus() {
207
+ this.hasFocus = true;
208
+ }
209
+ onWrapperBlur() {
210
+ this.hasFocus = false;
211
+ }
212
+ keyed({ LEFT, RIGHT, isDown }) {
213
+ if (this.hasFocus && isDown) {
214
+ if (LEFT) {
215
+ this.goPrev();
216
+ } else if (RIGHT) {
217
+ this.goNext();
218
+ }
219
+ }
220
+ }
221
+ prepareInvisibleItems() {
222
+ const state = this.states[this.currentIndex];
223
+ const nextItemsToPrepare = [];
224
+ const previousItemsToPrepare = [];
225
+ this.getInvisibleItems(this.getStateValueByMode(state.x)).forEach((item, i) => {
226
+ if (i > this.currentIndex) {
227
+ nextItemsToPrepare.push(item);
228
+ return;
229
+ }
230
+ if (i < this.currentIndex) {
231
+ previousItemsToPrepare.push(item);
232
+ }
233
+ });
234
+ nextItemsToPrepare.forEach((item) => {
235
+ const invisibleState = this.getStateWhereItemWillBeInvisible(item);
236
+ if (invisibleState) {
237
+ item.moveInstantly(this.getStateValueByMode(invisibleState.x));
238
+ }
239
+ });
240
+ previousItemsToPrepare.forEach((item) => {
241
+ const invisibleState = this.getStateWhereItemWillBeInvisible(item, { reversed: true });
242
+ if (invisibleState) {
243
+ item.moveInstantly(this.getStateValueByMode(invisibleState.x));
244
+ }
245
+ });
246
+ }
247
+ getStateWhereItemWillBeInvisible(item, { reversed = false } = {}) {
248
+ const visibleStates = this.states.filter(
249
+ (state) => item.willBeVisible(this.getStateValueByMode(state.x))
250
+ );
251
+ const firstVisibleState = visibleStates[0];
252
+ const lastVisibleState = visibleStates.at(-1);
253
+ const firstVisibleStateIndex = this.states.findIndex(
254
+ (state) => this.getStateValueByMode(state.x) === this.getStateValueByMode(firstVisibleState.x)
255
+ );
256
+ const lastVisibleStateIndex = this.states.findIndex((state) => state.x === lastVisibleState.x);
257
+ return reversed ? this.states[lastVisibleStateIndex + 1] : this.states[firstVisibleStateIndex - 1];
258
+ }
259
+ getVisibleItems(target) {
260
+ return this.$children.SliderItem.filter((item) => item.isVisible || item.willBeVisible(target));
261
+ }
262
+ getInvisibleItems(target) {
263
+ return this.$children.SliderItem.filter(
264
+ (item) => !item.isVisible && !item.willBeVisible(target)
265
+ );
266
+ }
267
+ }
268
+ export {
269
+ Slider
270
+ };
271
+ //# sourceMappingURL=Slider.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/Slider.ts"],
4
+ "sourcesContent": ["import { Base } from '@studiometa/js-toolkit';\nimport type { BaseProps, BaseConfig, DragServiceProps, KeyServiceProps } from '@studiometa/js-toolkit';\nimport { clamp, inertiaFinalValue, nextFrame, isDev } from '@studiometa/js-toolkit/utils';\nimport { SliderDrag } from './SliderDrag.js';\nimport { SliderItem } from './SliderItem.js';\n\nexport type SliderModes = 'left' | 'center' | 'right';\n\ntype SliderState = { x: Record<SliderModes, number> };\n\nexport interface SliderProps extends BaseProps {\n $refs: {\n wrapper: HTMLElement;\n }\n $children: {\n SliderItem: SliderItem[];\n SliderDrag: SliderDrag[];\n };\n $options: {\n mode: SliderModes;\n fitBounds: boolean;\n sensitivity: number;\n dropSensitivity: number;\n }\n}\n\n/**\n * Orchestrate the slider items state transition.\n * @todo a11y\n */\nexport class Slider<T extends BaseProps = BaseProps> extends Base<T & SliderProps> {\n /**\n * Config.\n */\n static config :BaseConfig = {\n name: 'Slider',\n refs: ['wrapper', 'debug'],\n emits: ['goto', 'index'],\n components: {\n SliderItem,\n SliderDrag,\n },\n options: {\n mode: { type: String, default: 'left' },\n fitBounds: Boolean,\n contain: Boolean,\n sensitivity: { type: Number, default: 1 },\n dropSensitivity: { type: Number, default: 2 },\n },\n };\n\n __distanceX = 0;\n\n __initialX = 0;\n\n /**\n * Index of the current active slide.\n */\n __currentIndex = 0;\n\n /**\n * Get the current index.\n */\n get currentIndex() {\n return this.__currentIndex;\n }\n\n /**\n * Set the current index and emit the `index` event.\n */\n set currentIndex(value:number) {\n this.currentSliderItem.disactivate();\n this.$emit('index', value);\n this.__currentIndex = value;\n this.currentSliderItem.activate();\n }\n\n /**\n * Store all the states.\n */\n states:SliderState[] = [];\n\n /**\n * Origins for the different modes.\n */\n origins:Record<SliderModes, number> = {\n left: 0,\n center: 0,\n right: 0,\n };\n\n /**\n * Wether or not the wrapper is focused.\n * @type {boolean}\n */\n hasFocus = false;\n\n /**\n * Get the current state.\n */\n get currentState() {\n return this.states[this.currentIndex];\n }\n\n /**\n * Get the first state.\n */\n get firstState() {\n return this.states[0];\n }\n\n /**\n * Get the last state.\n */\n get lastState() {\n return this.states.at(-1);\n }\n\n /**\n * Get the minimal contain state value.\n */\n get containMinState():number {\n return this.getStateValueByMode(this.firstState.x, 'left');\n }\n\n /**\n * Get the maximal contain state value.\n */\n get containMaxState():number {\n return this.getStateValueByMode(this.lastState.x, 'right');\n }\n\n /**\n * Get the last index.\n */\n get indexMax():number {\n return this.$children.SliderItem.length - 1;\n }\n\n /**\n * Get the current SliderItem\n */\n get currentSliderItem() {\n return this.$children.SliderItem[this.currentIndex];\n }\n\n /**\n * Get the states for each SliderItem.\n */\n getStates():SliderState[] {\n const { wrapper } = this.$refs;\n const originRect = wrapper.getBoundingClientRect();\n\n this.origins = {\n left: originRect.left,\n center: originRect.x + originRect.width / 2,\n right: originRect.x + originRect.width,\n };\n\n const states:SliderState[] = this.$children.SliderItem.map((item) => ({\n x: {\n left: (item.rect.x - this.origins.left) * -1,\n center: (item.rect.x + item.rect.width / 2 - this.origins.center) * -1,\n right: (item.rect.x + item.rect.width - this.origins.right) * -1,\n },\n }));\n\n if (this.$options.contain) {\n const { mode } = this.$options;\n // Find state where last child has passed the wrapper bound completely\n if (mode === 'left') {\n const lastChild = this.$children.SliderItem.at(-1);\n\n const maxState = states.find((state) => {\n const lastChildPosition =\n lastChild.rect.x - this.origins.left + lastChild.rect.width + state.x.left;\n const diffWithWrapperBound = originRect.width - lastChildPosition;\n if (diffWithWrapperBound > 0) {\n state.x.left = Math.min(state.x.left + diffWithWrapperBound, 0);\n return true;\n }\n\n return false;\n });\n\n if (maxState) {\n return states.map((state) => {\n state.x.left = Math.max(state.x.left, maxState.x.left);\n return state;\n });\n }\n }\n\n if (mode === 'right') {\n const maxStateIndex = states.findIndex((state) => state.x.right <= 0);\n const maxState = maxStateIndex < 0 ? states.at(-1) : states[maxStateIndex - 1];\n\n return states.map((state) => {\n state.x.right = maxStateIndex < 0 ? maxState.x.right : Math.min(state.x.right, 0);\n return state;\n });\n }\n\n if (mode === 'center' && isDev) {\n console.warn(\n `[${this.$id}]`,\n 'The `center` mode is not yet compatible with the `contain` mode.',\n );\n }\n }\n\n return states;\n }\n\n /**\n * Get an origin by mode.\n */\n getOriginByMode(mode?:SliderModes) {\n return this.origins[mode ?? this.$options.mode];\n }\n\n /**\n * Get a state value according to the given mode.\n */\n getStateValueByMode(state:SliderState['x'], mode?:SliderModes) {\n return state[mode ?? this.$options.mode];\n }\n\n /**\n * Mounted hook.\n */\n mounted() {\n this.states = this.getStates();\n this.prepareInvisibleItems();\n this.goTo(this.currentIndex);\n }\n\n /**\n * Resized hook.\n */\n resized() {\n nextFrame(() => {\n this.states = this.getStates();\n nextFrame(() => {\n this.prepareInvisibleItems();\n this.goTo(this.currentIndex);\n });\n });\n }\n\n /**\n * Go to the next slide.\n */\n goNext() {\n if (this.currentIndex + 1 > this.indexMax) {\n return;\n }\n\n this.goTo(this.currentIndex + 1);\n }\n\n /**\n * Go to the previous slide.\n */\n goPrev() {\n if (this.currentIndex - 1 < 0) {\n return;\n }\n\n this.goTo(this.currentIndex - 1);\n }\n\n /**\n * Go to the given index.\n */\n goTo(index:number, { withInstantMove = true } = {}) {\n if (index < 0 || index > this.indexMax) {\n throw new Error('Index out of bound.');\n }\n\n const currentState = this.getStateValueByMode(this.currentState.x);\n const state = this.getStateValueByMode(this.states[index].x);\n const itemsToMove = this.getVisibleItems(state);\n const invisibleItemsToMoveInstantly = this.getInvisibleItems(state);\n\n itemsToMove.forEach((item) => {\n // Better perfs when going fast through the slides\n if (currentState !== state && withInstantMove) {\n item.moveInstantly(currentState);\n }\n nextFrame(() => item.move(state));\n });\n invisibleItemsToMoveInstantly.forEach((item) => {\n item.moveInstantly(state);\n });\n\n this.currentIndex = index;\n this.$emit('goto', index);\n }\n\n /**\n * Listen to the Draggable `start` event.\n */\n onSliderDragStart() {\n this.__initialX = this.currentSliderItem ? this.currentSliderItem.x : 0;\n this.__distanceX = this.__initialX;\n }\n\n /**\n * Listen to the Draggable `drag` event.\n */\n onSliderDragDrag(props:DragServiceProps) {\n if (Math.abs(props.delta.y) > Math.abs(props.delta.x)) {\n return;\n }\n\n this.__distanceX = this.__initialX + props.distance.x * this.$options.sensitivity;\n\n this.getVisibleItems(this.__distanceX).forEach((item) => {\n item.moveInstantly(this.__distanceX);\n });\n }\n\n /**\n * Listen to the Draggable `drop` event and find the new active slide.\n */\n onSliderDragDrop(props:DragServiceProps) {\n if (Math.abs(props.delta.y) > Math.abs(props.delta.x)) {\n return;\n }\n\n let finalX = clamp(\n inertiaFinalValue(this.__distanceX, props.delta.x * this.$options.dropSensitivity),\n 0,\n this.getStateValueByMode(this.lastState.x),\n );\n\n const absoluteDifferencesBetweenDistanceAndState = this.states.map((state) =>\n Math.abs(finalX - this.getStateValueByMode(state.x)),\n );\n const minimumDifference = Math.min(...absoluteDifferencesBetweenDistanceAndState);\n const closestIndex = absoluteDifferencesBetweenDistanceAndState.indexOf(minimumDifference);\n\n if (this.$options.fitBounds) {\n this.goTo(closestIndex, { withInstantMove: false });\n } else {\n if (this.$options.contain) {\n finalX = Math.min(this.containMinState, finalX);\n finalX = Math.max(this.containMaxState, finalX);\n }\n this.$children.SliderItem.forEach((item) => {\n item.move(finalX);\n });\n this.currentIndex = closestIndex;\n }\n }\n\n /**\n * Enable focus.\n */\n onWrapperFocus() {\n this.hasFocus = true;\n }\n\n /**\n * Disable focus.\n */\n onWrapperBlur() {\n this.hasFocus = false;\n }\n\n /**\n * Go prev or next when focus is on the wrapper and pressing arrow keys.\n */\n keyed({ LEFT, RIGHT, isDown }:KeyServiceProps) {\n if (this.hasFocus && isDown) {\n if (LEFT) {\n this.goPrev();\n } else if (RIGHT) {\n this.goNext();\n }\n }\n }\n\n /**\n * Prepare invisible items.\n */\n prepareInvisibleItems() {\n const state = this.states[this.currentIndex];\n const nextItemsToPrepare = [];\n const previousItemsToPrepare = [];\n\n this.getInvisibleItems(this.getStateValueByMode(state.x)).forEach((item, i) => {\n if (i > this.currentIndex) {\n nextItemsToPrepare.push(item);\n return;\n }\n\n if (i < this.currentIndex) {\n previousItemsToPrepare.push(item);\n }\n });\n\n nextItemsToPrepare.forEach((item) => {\n const invisibleState = this.getStateWhereItemWillBeInvisible(item);\n if (invisibleState) {\n item.moveInstantly(this.getStateValueByMode(invisibleState.x));\n }\n });\n\n previousItemsToPrepare.forEach((item) => {\n const invisibleState = this.getStateWhereItemWillBeInvisible(item, { reversed: true });\n if (invisibleState) {\n item.moveInstantly(this.getStateValueByMode(invisibleState.x));\n }\n });\n }\n\n /**\n * Get the state where the given item will be visible.\n */\n getStateWhereItemWillBeInvisible(item:SliderItem, { reversed = false } = {}):SliderState {\n const visibleStates = this.states.filter((state) =>\n item.willBeVisible(this.getStateValueByMode(state.x)),\n );\n const firstVisibleState = visibleStates[0];\n const lastVisibleState = visibleStates.at(-1);\n const firstVisibleStateIndex = this.states.findIndex(\n (state) =>\n this.getStateValueByMode(state.x) === this.getStateValueByMode(firstVisibleState.x),\n );\n const lastVisibleStateIndex = this.states.findIndex((state) => state.x === lastVisibleState.x);\n\n return reversed\n ? this.states[lastVisibleStateIndex + 1]\n : this.states[firstVisibleStateIndex - 1];\n }\n\n /**\n * Get the visible slides for the given position.\n */\n getVisibleItems(target:number) {\n return this.$children.SliderItem.filter((item) => item.isVisible || item.willBeVisible(target));\n }\n\n /**\n * Get the invisible slides for the given position.\n */\n getInvisibleItems(target:number) {\n return this.$children.SliderItem.filter(\n (item) => !item.isVisible && !item.willBeVisible(target),\n );\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": []
7
+ }
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
6
  var __export = (target, all) => {
@@ -17,21 +15,20 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
21
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
19
  var __publicField = (obj, key, value) => {
23
20
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
24
21
  return value;
25
22
  };
26
23
 
27
- // packages/ui/molecules/Slider/SliderBtn.js
24
+ // packages/ui/molecules/Slider/SliderBtn.ts
28
25
  var SliderBtn_exports = {};
29
26
  __export(SliderBtn_exports, {
30
- default: () => SliderBtn
27
+ SliderBtn: () => SliderBtn
31
28
  });
32
29
  module.exports = __toCommonJS(SliderBtn_exports);
33
- var import_AbstractSliderChild = __toESM(require("./AbstractSliderChild.cjs"), 1);
34
- var SliderBtn = class extends import_AbstractSliderChild.default {
30
+ var import_AbstractSliderChild = require("./AbstractSliderChild.cjs");
31
+ var SliderBtn = class extends import_AbstractSliderChild.AbstractSliderChild {
35
32
  update(index) {
36
33
  if (index === 0 && this.$options.prev || index === this.$parent.indexMax && this.$options.next) {
37
34
  this.$el.setAttribute("disabled", "");
@@ -56,3 +53,4 @@ __publicField(SliderBtn, "config", {
56
53
  }
57
54
  });
58
55
  if (module.exports.default) module.exports = module.exports.default;
56
+ //# sourceMappingURL=SliderBtn.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/SliderBtn.ts"],
4
+ "sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderBtnProps extends BaseProps {\n $options: {\n prev: boolean;\n next: boolean;\n };\n}\n\n/**\n * SliderBtn class.\n */\nexport class SliderBtn<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderBtnProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderBtn',\n options: {\n prev: Boolean,\n next: Boolean,\n },\n };\n\n /**\n * Update attributes.\n * @param {number} index\n * @returns {void}\n */\n update(index: number) {\n if (\n (index === 0 && this.$options.prev) ||\n (index === this.$parent.indexMax && this.$options.next)\n ) {\n this.$el.setAttribute('disabled', '');\n } else {\n this.$el.removeAttribute('disabled');\n }\n }\n\n /**\n * Go prev or next on click.\n * @returns {void}\n */\n onClick() {\n const { prev, next } = this.$options;\n\n if (prev) {\n this.$parent.goPrev();\n } else if (next) {\n this.$parent.goNext();\n }\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,iCAAoC;AAY7B,IAAM,YAAN,cAAyD,+CAAwC;AAAA,EAiBtG,OAAO,OAAe;AACpB,QACG,UAAU,KAAK,KAAK,SAAS,QAC7B,UAAU,KAAK,QAAQ,YAAY,KAAK,SAAS,MAClD;AACA,WAAK,IAAI,aAAa,YAAY,EAAE;AAAA,IACtC,OAAO;AACL,WAAK,IAAI,gBAAgB,UAAU;AAAA,IACrC;AAAA,EACF;AAAA,EAMA,UAAU;AACR,UAAM,EAAE,MAAM,KAAK,IAAI,KAAK;AAE5B,QAAI,MAAM;AACR,WAAK,QAAQ,OAAO;AAAA,IACtB,WAAW,MAAM;AACf,WAAK,QAAQ,OAAO;AAAA,IACtB;AAAA,EACF;AACF;AArCE,cAJW,WAIJ,UAAqB;AAAA,EAC1B,MAAM;AAAA,EACN,SAAS;AAAA,IACP,MAAM;AAAA,IACN,MAAM;AAAA,EACR;AACF;",
6
+ "names": []
7
+ }
@@ -1,39 +1,28 @@
1
- /**
2
- * @typedef {SliderBtn & {
3
- * $parent: import('./Slider.js').default
4
- * }} SliderBtnInterface
5
- */
1
+ import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';
2
+ import { AbstractSliderChild } from './AbstractSliderChild.js';
3
+ export interface SliderBtnProps extends BaseProps {
4
+ $options: {
5
+ prev: boolean;
6
+ next: boolean;
7
+ };
8
+ }
6
9
  /**
7
10
  * SliderBtn class.
8
11
  */
9
- export default class SliderBtn extends AbstractSliderChild {
12
+ export declare class SliderBtn<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderBtnProps> {
10
13
  /**
11
14
  * Config.
12
15
  */
13
- static config: {
14
- name: string;
15
- options: {
16
- prev: BooleanConstructor;
17
- next: BooleanConstructor;
18
- };
19
- };
16
+ static config: BaseConfig;
20
17
  /**
21
18
  * Update attributes.
22
- *
23
- * @this {SliderBtnInterface}
24
19
  * @param {number} index
25
20
  * @returns {void}
26
21
  */
27
- update(this: SliderBtnInterface, index: number): void;
22
+ update(index: number): void;
28
23
  /**
29
24
  * Go prev or next on click.
30
- *
31
- * @this {SliderBtnInterface}
32
25
  * @returns {void}
33
26
  */
34
- onClick(this: SliderBtnInterface): void;
27
+ onClick(): void;
35
28
  }
36
- export type SliderBtnInterface = SliderBtn & {
37
- $parent: import('./Slider.js').default;
38
- };
39
- import AbstractSliderChild from "./AbstractSliderChild.js";
@@ -1 +1,29 @@
1
- import i from"./AbstractSliderChild.js";class s extends i{static config={name:"SliderBtn",options:{prev:Boolean,next:Boolean}};update(t){t===0&&this.$options.prev||t===this.$parent.indexMax&&this.$options.next?this.$el.setAttribute("disabled",""):this.$el.removeAttribute("disabled")}onClick(){const{prev:t,next:e}=this.$options;t?this.$parent.goPrev():e&&this.$parent.goNext()}}export{s as default};
1
+ import { AbstractSliderChild } from "./AbstractSliderChild.js";
2
+ class SliderBtn extends AbstractSliderChild {
3
+ static config = {
4
+ name: "SliderBtn",
5
+ options: {
6
+ prev: Boolean,
7
+ next: Boolean
8
+ }
9
+ };
10
+ update(index) {
11
+ if (index === 0 && this.$options.prev || index === this.$parent.indexMax && this.$options.next) {
12
+ this.$el.setAttribute("disabled", "");
13
+ } else {
14
+ this.$el.removeAttribute("disabled");
15
+ }
16
+ }
17
+ onClick() {
18
+ const { prev, next } = this.$options;
19
+ if (prev) {
20
+ this.$parent.goPrev();
21
+ } else if (next) {
22
+ this.$parent.goNext();
23
+ }
24
+ }
25
+ }
26
+ export {
27
+ SliderBtn
28
+ };
29
+ //# sourceMappingURL=SliderBtn.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/SliderBtn.ts"],
4
+ "sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderBtnProps extends BaseProps {\n $options: {\n prev: boolean;\n next: boolean;\n };\n}\n\n/**\n * SliderBtn class.\n */\nexport class SliderBtn<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderBtnProps> {\n /**\n * Config.\n */\n static config: BaseConfig = {\n name: 'SliderBtn',\n options: {\n prev: Boolean,\n next: Boolean,\n },\n };\n\n /**\n * Update attributes.\n * @param {number} index\n * @returns {void}\n */\n update(index: number) {\n if (\n (index === 0 && this.$options.prev) ||\n (index === this.$parent.indexMax && this.$options.next)\n ) {\n this.$el.setAttribute('disabled', '');\n } else {\n this.$el.removeAttribute('disabled');\n }\n }\n\n /**\n * Go prev or next on click.\n * @returns {void}\n */\n onClick() {\n const { prev, next } = this.$options;\n\n if (prev) {\n this.$parent.goPrev();\n } else if (next) {\n this.$parent.goNext();\n }\n }\n}\n"],
5
+ "mappings": "AACA,SAAS,2BAA2B;AAY7B,MAAM,kBAAmD,oBAAwC;AAAA,EAItG,OAAO,SAAqB;AAAA,IAC1B,MAAM;AAAA,IACN,SAAS;AAAA,MACP,MAAM;AAAA,MACN,MAAM;AAAA,IACR;AAAA,EACF;AAAA,EAOA,OAAO,OAAe;AACpB,QACG,UAAU,KAAK,KAAK,SAAS,QAC7B,UAAU,KAAK,QAAQ,YAAY,KAAK,SAAS,MAClD;AACA,WAAK,IAAI,aAAa,YAAY,EAAE;AAAA,IACtC,OAAO;AACL,WAAK,IAAI,gBAAgB,UAAU;AAAA,IACrC;AAAA,EACF;AAAA,EAMA,UAAU;AACR,UAAM,EAAE,MAAM,KAAK,IAAI,KAAK;AAE5B,QAAI,MAAM;AACR,WAAK,QAAQ,OAAO;AAAA,IACtB,WAAW,MAAM;AACf,WAAK,QAAQ,OAAO;AAAA,IACtB;AAAA,EACF;AACF;",
6
+ "names": []
7
+ }
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
6
  var __export = (target, all) => {
@@ -17,21 +15,20 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
21
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
19
  var __publicField = (obj, key, value) => {
23
20
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
24
21
  return value;
25
22
  };
26
23
 
27
- // packages/ui/molecules/Slider/SliderCount.js
24
+ // packages/ui/molecules/Slider/SliderCount.ts
28
25
  var SliderCount_exports = {};
29
26
  __export(SliderCount_exports, {
30
- default: () => SliderCount
27
+ SliderCount: () => SliderCount
31
28
  });
32
29
  module.exports = __toCommonJS(SliderCount_exports);
33
- var import_AbstractSliderChild = __toESM(require("./AbstractSliderChild.cjs"), 1);
34
- var SliderCount = class extends import_AbstractSliderChild.default {
30
+ var import_AbstractSliderChild = require("./AbstractSliderChild.cjs");
31
+ var SliderCount = class extends import_AbstractSliderChild.AbstractSliderChild {
35
32
  update(index) {
36
33
  this.$refs.current.innerHTML = `${index + 1}`;
37
34
  }
@@ -41,3 +38,4 @@ __publicField(SliderCount, "config", {
41
38
  refs: ["current"]
42
39
  });
43
40
  if (module.exports.default) module.exports = module.exports.default;
41
+ //# sourceMappingURL=SliderCount.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/SliderCount.ts"],
4
+ "sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderCountProps extends BaseProps {\n $refs: {\n current: HTMLElement;\n }\n}\n\n/**\n * SliderCount class.\n */\nexport class SliderCount<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderCountProps> {\n /**\n * Config.\n */\n static config:BaseConfig = {\n name: 'SliderCount',\n refs: ['current'],\n };\n\n /**\n * Update the current counter indicator.\n *\n * @param {number} index The new active index.\n * @returns {void}\n */\n update(index:number) {\n this.$refs.current.innerHTML = `${index + 1}`;\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,iCAAoC;AAW7B,IAAM,cAAN,cAA2D,+CAA0C;AAAA,EAe1G,OAAO,OAAc;AACnB,SAAK,MAAM,QAAQ,YAAY,GAAG,QAAQ;AAAA,EAC5C;AACF;AAdE,cAJW,aAIJ,UAAoB;AAAA,EACzB,MAAM;AAAA,EACN,MAAM,CAAC,SAAS;AAClB;",
6
+ "names": []
7
+ }
@@ -1,29 +1,23 @@
1
- /**
2
- * @typedef {SliderCount & { $refs: { current: HTMLElement } }} SliderCountInterface
3
- */
1
+ import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';
2
+ import { AbstractSliderChild } from './AbstractSliderChild.js';
3
+ export interface SliderCountProps extends BaseProps {
4
+ $refs: {
5
+ current: HTMLElement;
6
+ };
7
+ }
4
8
  /**
5
9
  * SliderCount class.
6
10
  */
7
- export default class SliderCount extends AbstractSliderChild {
11
+ export declare class SliderCount<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderCountProps> {
8
12
  /**
9
13
  * Config.
10
14
  */
11
- static config: {
12
- name: string;
13
- refs: string[];
14
- };
15
+ static config: BaseConfig;
15
16
  /**
16
17
  * Update the current counter indicator.
17
18
  *
18
- * @this {SliderCountInterface}
19
19
  * @param {number} index The new active index.
20
20
  * @returns {void}
21
21
  */
22
- update(this: SliderCountInterface, index: number): void;
22
+ update(index: number): void;
23
23
  }
24
- export type SliderCountInterface = SliderCount & {
25
- $refs: {
26
- current: HTMLElement;
27
- };
28
- };
29
- import AbstractSliderChild from "./AbstractSliderChild.js";
@@ -1 +1,14 @@
1
- import r from"./AbstractSliderChild.js";class t extends r{static config={name:"SliderCount",refs:["current"]};update(e){this.$refs.current.innerHTML=`${e+1}`}}export{t as default};
1
+ import { AbstractSliderChild } from "./AbstractSliderChild.js";
2
+ class SliderCount extends AbstractSliderChild {
3
+ static config = {
4
+ name: "SliderCount",
5
+ refs: ["current"]
6
+ };
7
+ update(index) {
8
+ this.$refs.current.innerHTML = `${index + 1}`;
9
+ }
10
+ }
11
+ export {
12
+ SliderCount
13
+ };
14
+ //# sourceMappingURL=SliderCount.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/SliderCount.ts"],
4
+ "sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderCountProps extends BaseProps {\n $refs: {\n current: HTMLElement;\n }\n}\n\n/**\n * SliderCount class.\n */\nexport class SliderCount<T extends BaseProps = BaseProps> extends AbstractSliderChild<T & SliderCountProps> {\n /**\n * Config.\n */\n static config:BaseConfig = {\n name: 'SliderCount',\n refs: ['current'],\n };\n\n /**\n * Update the current counter indicator.\n *\n * @param {number} index The new active index.\n * @returns {void}\n */\n update(index:number) {\n this.$refs.current.innerHTML = `${index + 1}`;\n }\n}\n"],
5
+ "mappings": "AACA,SAAS,2BAA2B;AAW7B,MAAM,oBAAqD,oBAA0C;AAAA,EAI1G,OAAO,SAAoB;AAAA,IACzB,MAAM;AAAA,IACN,MAAM,CAAC,SAAS;AAAA,EAClB;AAAA,EAQA,OAAO,OAAc;AACnB,SAAK,MAAM,QAAQ,YAAY,GAAG,QAAQ;AAAA,EAC5C;AACF;",
6
+ "names": []
7
+ }
@@ -1,8 +1,6 @@
1
- var __create = Object.create;
2
1
  var __defProp = Object.defineProperty;
3
2
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
3
  var __getOwnPropNames = Object.getOwnPropertyNames;
5
- var __getProtoOf = Object.getPrototypeOf;
6
4
  var __hasOwnProp = Object.prototype.hasOwnProperty;
7
5
  var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
6
  var __export = (target, all) => {
@@ -17,22 +15,21 @@ var __copyProps = (to, from, except, desc) => {
17
15
  }
18
16
  return to;
19
17
  };
20
- var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, mod));
21
18
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
22
19
  var __publicField = (obj, key, value) => {
23
20
  __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
24
21
  return value;
25
22
  };
26
23
 
27
- // packages/ui/molecules/Slider/SliderDots.js
24
+ // packages/ui/molecules/Slider/SliderDots.ts
28
25
  var SliderDots_exports = {};
29
26
  __export(SliderDots_exports, {
30
- default: () => SliderDots
27
+ SliderDots: () => SliderDots
31
28
  });
32
29
  module.exports = __toCommonJS(SliderDots_exports);
33
30
  var import_decorators = require("../../decorators/index.cjs");
34
- var import_AbstractSliderChild = __toESM(require("./AbstractSliderChild.cjs"), 1);
35
- var SliderDots = class extends (0, import_decorators.withTransition)(import_AbstractSliderChild.default) {
31
+ var import_AbstractSliderChild = require("./AbstractSliderChild.cjs");
32
+ var SliderDots = class extends (0, import_decorators.withTransition)(import_AbstractSliderChild.AbstractSliderChild) {
36
33
  get target() {
37
34
  return this.$refs.dots;
38
35
  }
@@ -51,3 +48,4 @@ __publicField(SliderDots, "config", {
51
48
  refs: ["dots[]"]
52
49
  });
53
50
  if (module.exports.default) module.exports = module.exports.default;
51
+ //# sourceMappingURL=SliderDots.cjs.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../packages/ui/molecules/Slider/SliderDots.ts"],
4
+ "sourcesContent": ["import type { BaseProps, BaseConfig } from '@studiometa/js-toolkit';\nimport { withTransition } from '../../decorators/index.js';\nimport { AbstractSliderChild } from './AbstractSliderChild.js';\n\nexport interface SliderDotsProps extends BaseProps {\n $refs: {\n dots: HTMLButtonElement[];\n };\n}\n\n/**\n * SliderDots class.\n */\nexport class SliderDots<\n T extends BaseProps = BaseProps,\n> extends withTransition<AbstractSliderChild>(AbstractSliderChild)<T & SliderDotsProps> {\n /**\n * Config.\n */\n static config:BaseConfig = {\n name: 'SliderDots',\n refs: ['dots[]'],\n };\n\n /**\n * Get target.\n * @returns {HTMLButtonElement[]}\n */\n get target() {\n return this.$refs.dots;\n }\n\n /**\n * The current active index.\n */\n currentIndex = 0;\n\n /**\n * Update dots classes according to the new index.\n *\n * @param {number} index\n * @returns {void}\n */\n update(index:number) {\n this.leave(this.$refs.dots[this.currentIndex]);\n this.enter(this.$refs.dots[index]);\n this.currentIndex = index;\n }\n\n /**\n * Go to the given index on dot click.\n */\n onDotsClick(event:MouseEvent, index:number) {\n this.$parent.goTo(index);\n }\n}\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AACA,wBAA+B;AAC/B,iCAAoC;AAW7B,IAAM,aAAN,kBAEG,kCAAoC,8CAAmB,EAAuB;AAAA,EAatF,IAAI,SAAS;AACX,WAAO,KAAK,MAAM;AAAA,EACpB;AAAA,EAKA,eAAe;AAAA,EAQf,OAAO,OAAc;AACnB,SAAK,MAAM,KAAK,MAAM,KAAK,KAAK,aAAa;AAC7C,SAAK,MAAM,KAAK,MAAM,KAAK,MAAM;AACjC,SAAK,eAAe;AAAA,EACtB;AAAA,EAKA,YAAY,OAAkB,OAAc;AAC1C,SAAK,QAAQ,KAAK,KAAK;AAAA,EACzB;AACF;AApCE,cANW,YAMJ,UAAoB;AAAA,EACzB,MAAM;AAAA,EACN,MAAM,CAAC,QAAQ;AACjB;",
6
+ "names": []
7
+ }