@basic-ui/core 0.0.53 → 0.0.54

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 (400) hide show
  1. package/README.md +3 -3
  2. package/build/cjs/index.js +88 -88
  3. package/build/cjs/index.js.map +1 -1
  4. package/build/esm/Accordion/Accordion.d.ts +9 -9
  5. package/build/esm/Accordion/Accordion.js.map +1 -1
  6. package/build/esm/Accordion/AccordionBody.d.ts +6 -6
  7. package/build/esm/Accordion/AccordionBody.js.map +1 -1
  8. package/build/esm/Accordion/AccordionHeader.d.ts +7 -7
  9. package/build/esm/Accordion/AccordionHeader.js.map +1 -1
  10. package/build/esm/Accordion/AccordionItem.d.ts +9 -9
  11. package/build/esm/Accordion/AccordionItem.js.map +1 -1
  12. package/build/esm/Accordion/context.d.ts +19 -19
  13. package/build/esm/Accordion/context.js.map +1 -1
  14. package/build/esm/Accordion/index.d.ts +4 -4
  15. package/build/esm/Accordion/index.js.map +1 -1
  16. package/build/esm/Accordion/scopeQuery.d.ts +2 -2
  17. package/build/esm/Accordion/scopeQuery.js.map +1 -1
  18. package/build/esm/CheckBox/CheckBox.d.ts +7 -7
  19. package/build/esm/CheckBox/CheckBox.js.map +1 -1
  20. package/build/esm/CheckBox/index.d.ts +1 -1
  21. package/build/esm/CheckBox/index.js.map +1 -1
  22. package/build/esm/ComboBox/Combobox.d.ts +18 -18
  23. package/build/esm/ComboBox/Combobox.js.map +1 -1
  24. package/build/esm/ComboBox/ComboboxButton.d.ts +9 -9
  25. package/build/esm/ComboBox/ComboboxButton.js.map +1 -1
  26. package/build/esm/ComboBox/ComboboxInput.d.ts +17 -17
  27. package/build/esm/ComboBox/ComboboxInput.js.map +1 -1
  28. package/build/esm/ComboBox/ComboboxLabel.d.ts +7 -7
  29. package/build/esm/ComboBox/ComboboxLabel.js.map +1 -1
  30. package/build/esm/ComboBox/ComboboxList.d.ts +8 -8
  31. package/build/esm/ComboBox/ComboboxList.js.map +1 -1
  32. package/build/esm/ComboBox/ComboboxOption.d.ts +11 -11
  33. package/build/esm/ComboBox/ComboboxOption.js.map +1 -1
  34. package/build/esm/ComboBox/ComboboxPopover.d.ts +9 -9
  35. package/build/esm/ComboBox/ComboboxPopover.js.map +1 -1
  36. package/build/esm/ComboBox/cities.d.ts +5 -5
  37. package/build/esm/ComboBox/cities.js.map +1 -1
  38. package/build/esm/ComboBox/context.d.ts +30 -30
  39. package/build/esm/ComboBox/context.js.map +1 -1
  40. package/build/esm/ComboBox/hooks.d.ts +37 -37
  41. package/build/esm/ComboBox/hooks.js.map +1 -1
  42. package/build/esm/ComboBox/index.d.ts +8 -8
  43. package/build/esm/ComboBox/index.js.map +1 -1
  44. package/build/esm/ComboBox/makeHash.d.ts +1 -1
  45. package/build/esm/ComboBox/makeHash.js.map +1 -1
  46. package/build/esm/ComboBox/scopeQuery.d.ts +1 -1
  47. package/build/esm/ComboBox/scopeQuery.js.map +1 -1
  48. package/build/esm/FocusLock/FocusLock.d.ts +9 -9
  49. package/build/esm/FocusLock/FocusLock.js.map +1 -1
  50. package/build/esm/FocusLock/index.d.ts +1 -1
  51. package/build/esm/FocusLock/index.js.map +1 -1
  52. package/build/esm/FocusLock/tabUtils.d.ts +3 -3
  53. package/build/esm/FocusLock/tabUtils.js.map +1 -1
  54. package/build/esm/FocusLock/useFocusLock.d.ts +7 -7
  55. package/build/esm/FocusLock/useFocusLock.js.map +1 -1
  56. package/build/esm/List/List.d.ts +7 -7
  57. package/build/esm/List/List.js.map +1 -1
  58. package/build/esm/List/ListItem.d.ts +7 -7
  59. package/build/esm/List/ListItem.js.map +1 -1
  60. package/build/esm/List/context.d.ts +4 -4
  61. package/build/esm/List/context.js.map +1 -1
  62. package/build/esm/List/index.d.ts +2 -2
  63. package/build/esm/List/index.js.map +1 -1
  64. package/build/esm/Menu/ContextMenuTrigger.d.ts +11 -11
  65. package/build/esm/Menu/ContextMenuTrigger.js.map +1 -1
  66. package/build/esm/Menu/Menu.d.ts +10 -10
  67. package/build/esm/Menu/Menu.js.map +1 -1
  68. package/build/esm/Menu/MenuButton.d.ts +11 -11
  69. package/build/esm/Menu/MenuButton.js.map +1 -1
  70. package/build/esm/Menu/MenuItem.d.ts +8 -8
  71. package/build/esm/Menu/MenuItem.js.map +1 -1
  72. package/build/esm/Menu/MenuList.d.ts +7 -7
  73. package/build/esm/Menu/MenuList.js.map +1 -1
  74. package/build/esm/Menu/MenuPopover.d.ts +8 -8
  75. package/build/esm/Menu/MenuPopover.js.map +1 -1
  76. package/build/esm/Menu/context.d.ts +25 -25
  77. package/build/esm/Menu/context.js.map +1 -1
  78. package/build/esm/Menu/fixtures/countryList.d.ts +1 -1
  79. package/build/esm/Menu/fixtures/countryList.js.map +1 -1
  80. package/build/esm/Menu/index.d.ts +6 -6
  81. package/build/esm/Menu/index.js.map +1 -1
  82. package/build/esm/Menu/scope.d.ts +1 -1
  83. package/build/esm/Menu/scope.js.map +1 -1
  84. package/build/esm/Modal/Modal.d.ts +9 -9
  85. package/build/esm/Modal/Modal.js.map +1 -1
  86. package/build/esm/Modal/ModalBackdrop.d.ts +10 -10
  87. package/build/esm/Modal/ModalBackdrop.js.map +1 -1
  88. package/build/esm/Modal/index.d.ts +2 -2
  89. package/build/esm/Modal/index.js.map +1 -1
  90. package/build/esm/Popper/Popper.d.ts +35 -35
  91. package/build/esm/Popper/Popper.js +1 -2
  92. package/build/esm/Popper/Popper.js.map +1 -1
  93. package/build/esm/Popper/PopperArrow.d.ts +6 -6
  94. package/build/esm/Popper/PopperArrow.js.map +1 -1
  95. package/build/esm/Popper/context.d.ts +6 -6
  96. package/build/esm/Popper/context.js.map +1 -1
  97. package/build/esm/Popper/index.d.ts +3 -3
  98. package/build/esm/Popper/index.js.map +1 -1
  99. package/build/esm/Portal/Portal.d.ts +7 -7
  100. package/build/esm/Portal/PortalSelectorProvider.d.ts +8 -8
  101. package/build/esm/Portal/index.d.ts +2 -2
  102. package/build/esm/RadioButton/RadioButton.d.ts +10 -10
  103. package/build/esm/RadioButton/RadioButton.js.map +1 -1
  104. package/build/esm/RadioButton/RadioGroup.d.ts +12 -12
  105. package/build/esm/RadioButton/RadioGroup.js.map +1 -1
  106. package/build/esm/RadioButton/context.d.ts +9 -9
  107. package/build/esm/RadioButton/context.js.map +1 -1
  108. package/build/esm/RadioButton/index.d.ts +2 -2
  109. package/build/esm/RadioButton/index.js.map +1 -1
  110. package/build/esm/SkipNav/SkipNav.d.ts +7 -7
  111. package/build/esm/SkipNav/SkipNav.js.map +1 -1
  112. package/build/esm/SkipNav/index.d.ts +1 -1
  113. package/build/esm/SkipNav/index.js.map +1 -1
  114. package/build/esm/Slider/Slider.d.ts +197 -197
  115. package/build/esm/Slider/Slider.js +82 -82
  116. package/build/esm/Slider/Slider.js.map +1 -1
  117. package/build/esm/Slider/index.d.ts +1 -1
  118. package/build/esm/Slider/index.js.map +1 -1
  119. package/build/esm/Spinner/Spinner.d.ts +12 -12
  120. package/build/esm/Spinner/Spinner.js.map +1 -1
  121. package/build/esm/Spinner/SpinnerButton.d.ts +8 -8
  122. package/build/esm/Spinner/SpinnerButton.js.map +1 -1
  123. package/build/esm/Spinner/context.d.ts +12 -12
  124. package/build/esm/Spinner/context.js.map +1 -1
  125. package/build/esm/Spinner/index.d.ts +2 -2
  126. package/build/esm/Spinner/index.js.map +1 -1
  127. package/build/esm/Tabs/Tab.d.ts +7 -7
  128. package/build/esm/Tabs/Tab.js.map +1 -1
  129. package/build/esm/Tabs/TabList.d.ts +9 -9
  130. package/build/esm/Tabs/TabList.js.map +1 -1
  131. package/build/esm/Tabs/TabPanel.d.ts +8 -8
  132. package/build/esm/Tabs/TabPanel.js.map +1 -1
  133. package/build/esm/Tabs/TabPanels.d.ts +8 -8
  134. package/build/esm/Tabs/TabPanels.js.map +1 -1
  135. package/build/esm/Tabs/Tabs.d.ts +10 -10
  136. package/build/esm/Tabs/Tabs.js.map +1 -1
  137. package/build/esm/Tabs/context.d.ts +17 -17
  138. package/build/esm/Tabs/context.js.map +1 -1
  139. package/build/esm/Tabs/index.d.ts +5 -5
  140. package/build/esm/Tabs/index.js.map +1 -1
  141. package/build/esm/Tabs/scopeQuery.d.ts +1 -1
  142. package/build/esm/Tabs/scopeQuery.js.map +1 -1
  143. package/build/esm/Tooltip/Tooltip.d.ts +10 -10
  144. package/build/esm/Tooltip/Tooltip.js.map +1 -1
  145. package/build/esm/Tooltip/index.d.ts +1 -1
  146. package/build/esm/Tooltip/index.js.map +1 -1
  147. package/build/esm/Tooltip/stateMachine.d.ts +28 -28
  148. package/build/esm/Tooltip/stateMachine.js.map +1 -1
  149. package/build/esm/Tooltip/useTooltip.d.ts +10 -10
  150. package/build/esm/Tooltip/useTooltip.js.map +1 -1
  151. package/build/esm/hooks/index.d.ts +13 -13
  152. package/build/esm/hooks/index.js.map +1 -1
  153. package/build/esm/hooks/useAutoFocus.d.ts +2 -2
  154. package/build/esm/hooks/useAutoFocus.js.map +1 -1
  155. package/build/esm/hooks/useChildrenCounter.d.ts +7 -7
  156. package/build/esm/hooks/useChildrenCounter.js.map +1 -1
  157. package/build/esm/hooks/useControlledState.d.ts +3 -3
  158. package/build/esm/hooks/useFocusReturn.d.ts +2 -2
  159. package/build/esm/hooks/useFocusReturn.js.map +1 -1
  160. package/build/esm/hooks/useFocusState.d.ts +11 -11
  161. package/build/esm/hooks/useFocusState.js.map +1 -1
  162. package/build/esm/hooks/useGestureHandlers.d.ts +52 -52
  163. package/build/esm/hooks/useGestureHandlers.js.map +1 -1
  164. package/build/esm/hooks/useMeasure.d.ts +7 -7
  165. package/build/esm/hooks/useMeasure.js.map +1 -1
  166. package/build/esm/hooks/useOnClickOutside.d.ts +2 -2
  167. package/build/esm/hooks/useOnClickOutside.js.map +1 -1
  168. package/build/esm/hooks/useOnKeyDown.d.ts +1 -1
  169. package/build/esm/hooks/useOnKeyDown.js.map +1 -1
  170. package/build/esm/hooks/useReducerMachine.d.ts +24 -24
  171. package/build/esm/hooks/useReducerMachine.js.map +1 -1
  172. package/build/esm/hooks/useRemoveBodyScroll.d.ts +2 -2
  173. package/build/esm/hooks/useRemoveBodyScroll.js.map +1 -1
  174. package/build/esm/hooks/useScope.d.ts +11 -11
  175. package/build/esm/hooks/useScope.js.map +1 -1
  176. package/build/esm/hooks/useThrottle.d.ts +1 -1
  177. package/build/esm/hooks/useThrottle.js.map +1 -1
  178. package/build/esm/index.d.ts +15 -15
  179. package/build/esm/index.js.map +1 -1
  180. package/build/esm/utils/assign-ref.d.ts +3 -3
  181. package/build/esm/utils/assign-ref.js.map +1 -1
  182. package/build/esm/utils/can-use-dom.d.ts +1 -1
  183. package/build/esm/utils/can-use-dom.js.map +1 -1
  184. package/build/esm/utils/clamp.d.ts +1 -1
  185. package/build/esm/utils/clamp.js.map +1 -1
  186. package/build/esm/utils/context.d.ts +7 -7
  187. package/build/esm/utils/context.js.map +1 -1
  188. package/build/esm/utils/create-subscription.d.ts +4 -4
  189. package/build/esm/utils/create-subscription.js.map +1 -1
  190. package/build/esm/utils/get-circular-index.d.ts +1 -1
  191. package/build/esm/utils/get-circular-index.js.map +1 -1
  192. package/build/esm/utils/index.d.ts +10 -10
  193. package/build/esm/utils/index.js.map +1 -1
  194. package/build/esm/utils/is-right-click.d.ts +6 -6
  195. package/build/esm/utils/is-right-click.js +4 -4
  196. package/build/esm/utils/is-right-click.js.map +1 -1
  197. package/build/esm/utils/owner-document.d.ts +7 -7
  198. package/build/esm/utils/owner-document.js +5 -5
  199. package/build/esm/utils/owner-document.js.map +1 -1
  200. package/build/esm/utils/polymorphic.d.ts +39 -39
  201. package/build/esm/utils/polymorphic.js.map +1 -1
  202. package/build/esm/utils/rubber-band-clamp.d.ts +2 -2
  203. package/build/esm/utils/rubber-band-clamp.js.map +1 -1
  204. package/build/esm/utils/use-stable-callback.d.ts +16 -16
  205. package/build/esm/utils/use-stable-callback.js +16 -16
  206. package/build/esm/utils/use-stable-callback.js.map +1 -1
  207. package/build/esm/utils/wrap-event.d.ts +3 -3
  208. package/build/esm/utils/wrap-event.js.map +1 -1
  209. package/build/tsconfig-build.tsbuildinfo +1 -1
  210. package/package.json +2 -2
  211. package/src/Accordion/Accordion.story.tsx +74 -74
  212. package/src/Accordion/Accordion.tsx +59 -59
  213. package/src/Accordion/AccordionBody.tsx +52 -52
  214. package/src/Accordion/AccordionHeader.tsx +167 -167
  215. package/src/Accordion/AccordionItem.tsx +50 -50
  216. package/src/Accordion/context.ts +37 -37
  217. package/src/Accordion/index.ts +4 -4
  218. package/src/Accordion/scopeQuery.ts +7 -7
  219. package/src/Accordion/styles.css +21 -21
  220. package/src/CheckBox/CheckBox.tsx +41 -41
  221. package/src/CheckBox/index.ts +1 -1
  222. package/src/ComboBox/ComboBox.story.tsx +120 -120
  223. package/src/ComboBox/Combobox.tsx +148 -148
  224. package/src/ComboBox/ComboboxButton.tsx +61 -61
  225. package/src/ComboBox/ComboboxInput.tsx +187 -187
  226. package/src/ComboBox/ComboboxLabel.tsx +33 -33
  227. package/src/ComboBox/ComboboxList.tsx +47 -47
  228. package/src/ComboBox/ComboboxOption.tsx +111 -111
  229. package/src/ComboBox/ComboboxPopover.tsx +64 -64
  230. package/src/ComboBox/cities.ts +23194 -23194
  231. package/src/ComboBox/context.ts +35 -35
  232. package/src/ComboBox/hooks.tsx +451 -451
  233. package/src/ComboBox/index.ts +8 -8
  234. package/src/ComboBox/makeHash.ts +19 -19
  235. package/src/ComboBox/scopeQuery.ts +6 -6
  236. package/src/ComboBox/styles.css +32 -32
  237. package/src/FocusLock/FocusLock.tsx +66 -66
  238. package/src/FocusLock/index.ts +1 -1
  239. package/src/FocusLock/tabUtils.ts +40 -40
  240. package/src/FocusLock/useFocusLock.ts +56 -56
  241. package/src/List/List.story.tsx +18 -18
  242. package/src/List/List.tsx +17 -17
  243. package/src/List/ListItem.tsx +23 -23
  244. package/src/List/context.ts +19 -19
  245. package/src/List/index.ts +2 -2
  246. package/src/Menu/ContextMenu.story.tsx +73 -73
  247. package/src/Menu/ContextMenuTrigger.tsx +76 -76
  248. package/src/Menu/Menu.story.tsx +160 -160
  249. package/src/Menu/Menu.tsx +83 -83
  250. package/src/Menu/MenuButton.tsx +83 -83
  251. package/src/Menu/MenuComplex.story.tsx +58 -58
  252. package/src/Menu/MenuItem.tsx +88 -88
  253. package/src/Menu/MenuList.tsx +254 -254
  254. package/src/Menu/MenuPopover.tsx +35 -35
  255. package/src/Menu/context.ts +44 -44
  256. package/src/Menu/fixtures/countryList.ts +198 -198
  257. package/src/Menu/index.ts +6 -6
  258. package/src/Menu/scope.ts +7 -7
  259. package/src/Menu/styles.css +42 -42
  260. package/src/Modal/Modal.story.tsx +258 -258
  261. package/src/Modal/Modal.tsx +48 -48
  262. package/src/Modal/ModalBackdrop.tsx +78 -78
  263. package/src/Modal/NavDrawer.story.tsx +158 -158
  264. package/src/Modal/index.ts +2 -2
  265. package/src/Modal/styles.css +46 -46
  266. package/src/Popper/Popper.story.tsx +263 -263
  267. package/src/Popper/Popper.tsx +1 -1
  268. package/src/Popper/PopperArrow.tsx +35 -35
  269. package/src/Popper/context.ts +10 -10
  270. package/src/Popper/index.ts +3 -3
  271. package/src/Popper/styles.css +60 -60
  272. package/src/RadioButton/RadioButton.story.tsx +77 -77
  273. package/src/RadioButton/RadioButton.tsx +55 -55
  274. package/src/RadioButton/RadioGroup.tsx +60 -60
  275. package/src/RadioButton/context.ts +17 -17
  276. package/src/RadioButton/index.ts +2 -2
  277. package/src/SkipNav/SkipNav.tsx +16 -16
  278. package/src/SkipNav/index.tsx +1 -1
  279. package/src/Slider/Slider.story.tsx +45 -45
  280. package/src/Slider/Slider.tsx +1120 -1120
  281. package/src/Slider/index.ts +1 -1
  282. package/src/Slider/styles.css +131 -131
  283. package/src/Spinner/Spinner.story.tsx +31 -31
  284. package/src/Spinner/Spinner.tsx +117 -117
  285. package/src/Spinner/SpinnerButton.tsx +54 -54
  286. package/src/Spinner/context.ts +20 -20
  287. package/src/Spinner/index.ts +2 -2
  288. package/src/Spinner/styles.css +23 -23
  289. package/src/Tabs/Tab.story.tsx +80 -80
  290. package/src/Tabs/Tab.tsx +136 -136
  291. package/src/Tabs/TabList.tsx +71 -71
  292. package/src/Tabs/TabPanel.tsx +53 -53
  293. package/src/Tabs/TabPanels.tsx +30 -30
  294. package/src/Tabs/Tabs.tsx +46 -46
  295. package/src/Tabs/context.ts +30 -30
  296. package/src/Tabs/index.tsx +5 -5
  297. package/src/Tabs/scopeQuery.ts +6 -6
  298. package/src/Tooltip/Tooltip.story.tsx +61 -61
  299. package/src/Tooltip/Tooltip.tsx +50 -50
  300. package/src/Tooltip/index.ts +1 -1
  301. package/src/Tooltip/stateMachine.ts +192 -192
  302. package/src/Tooltip/styles.css +17 -17
  303. package/src/Tooltip/useTooltip.ts +136 -136
  304. package/src/hooks/index.ts +13 -13
  305. package/src/hooks/useAutoFocus.ts +22 -22
  306. package/src/hooks/useChildrenCounter.ts +51 -51
  307. package/src/hooks/useFocusReturn.ts +43 -43
  308. package/src/hooks/useFocusState.ts +30 -30
  309. package/src/hooks/useGestureHandlers.ts +286 -286
  310. package/src/hooks/useMeasure.ts +33 -33
  311. package/src/hooks/useOnClickOutside.ts +32 -32
  312. package/src/hooks/useOnKeyDown.ts +19 -19
  313. package/src/hooks/useReducerMachine.ts +60 -60
  314. package/src/hooks/useRemoveBodyScroll.ts +39 -39
  315. package/src/hooks/useScope.ts +52 -52
  316. package/src/hooks/useThrottle.ts +19 -19
  317. package/src/index.ts +20 -20
  318. package/src/utils/assign-ref.ts +27 -27
  319. package/src/utils/can-use-dom.ts +7 -7
  320. package/src/utils/clamp.ts +3 -3
  321. package/src/utils/context.tsx +48 -48
  322. package/src/utils/create-subscription.ts +16 -16
  323. package/src/utils/get-circular-index.ts +7 -7
  324. package/src/utils/index.ts +10 -10
  325. package/src/utils/is-right-click.ts +14 -14
  326. package/src/utils/owner-document.ts +13 -13
  327. package/src/utils/polymorphic.ts +78 -78
  328. package/src/utils/rubber-band-clamp.ts +25 -25
  329. package/src/utils/use-stable-callback.ts +58 -58
  330. package/src/utils/wrap-event.ts +22 -22
  331. package/build/esm/Carousel/Carousel.d.ts +0 -9
  332. package/build/esm/Carousel/Carousel.js +0 -38
  333. package/build/esm/Carousel/Carousel.js.map +0 -1
  334. package/build/esm/Carousel/Fader.d.ts +0 -14
  335. package/build/esm/Carousel/Fader.js +0 -76
  336. package/build/esm/Carousel/Fader.js.map +0 -1
  337. package/build/esm/Carousel/FaderItem.d.ts +0 -5
  338. package/build/esm/Carousel/FaderItem.js +0 -16
  339. package/build/esm/Carousel/FaderItem.js.map +0 -1
  340. package/build/esm/Carousel/Preloader.d.ts +0 -7
  341. package/build/esm/Carousel/Preloader.js +0 -70
  342. package/build/esm/Carousel/Preloader.js.map +0 -1
  343. package/build/esm/Carousel/Slider.d.ts +0 -14
  344. package/build/esm/Carousel/Slider.js +0 -212
  345. package/build/esm/Carousel/Slider.js.map +0 -1
  346. package/build/esm/Carousel/SliderItem.d.ts +0 -12
  347. package/build/esm/Carousel/SliderItem.js +0 -41
  348. package/build/esm/Carousel/SliderItem.js.map +0 -1
  349. package/build/esm/Carousel/context.d.ts +0 -10
  350. package/build/esm/Carousel/context.js +0 -8
  351. package/build/esm/Carousel/context.js.map +0 -1
  352. package/build/esm/Carousel/getSliderParams.d.ts +0 -9
  353. package/build/esm/Carousel/getSliderParams.js +0 -85
  354. package/build/esm/Carousel/getSliderParams.js.map +0 -1
  355. package/build/esm/Carousel/index.d.ts +0 -7
  356. package/build/esm/Carousel/index.js +0 -8
  357. package/build/esm/Carousel/index.js.map +0 -1
  358. package/build/esm/Carousel/useCarouselGestures.d.ts +0 -30
  359. package/build/esm/Carousel/useCarouselGestures.js +0 -33
  360. package/build/esm/Carousel/useCarouselGestures.js.map +0 -1
  361. package/build/esm/DatePicker/DatePicker.d.ts +0 -24
  362. package/build/esm/DatePicker/DatePicker.js +0 -101
  363. package/build/esm/DatePicker/DatePicker.js.map +0 -1
  364. package/build/esm/DatePicker/DatePickerSelect.d.ts +0 -8
  365. package/build/esm/DatePicker/DatePickerSelect.js +0 -201
  366. package/build/esm/DatePicker/DatePickerSelect.js.map +0 -1
  367. package/build/esm/DatePicker/RangeDatePicker.d.ts +0 -28
  368. package/build/esm/DatePicker/RangeDatePicker.js +0 -94
  369. package/build/esm/DatePicker/RangeDatePicker.js.map +0 -1
  370. package/build/esm/DatePicker/adjustDates.d.ts +0 -4
  371. package/build/esm/DatePicker/adjustDates.js +0 -18
  372. package/build/esm/DatePicker/adjustDates.js.map +0 -1
  373. package/build/esm/DatePicker/contexts.d.ts +0 -31
  374. package/build/esm/DatePicker/contexts.js +0 -15
  375. package/build/esm/DatePicker/contexts.js.map +0 -1
  376. package/build/esm/DatePicker/dateTypes.d.ts +0 -2
  377. package/build/esm/DatePicker/dateTypes.js +0 -2
  378. package/build/esm/DatePicker/dateTypes.js.map +0 -1
  379. package/build/esm/DatePicker/hooks.d.ts +0 -36
  380. package/build/esm/DatePicker/hooks.js +0 -98
  381. package/build/esm/DatePicker/hooks.js.map +0 -1
  382. package/build/esm/DatePicker/index.d.ts +0 -5
  383. package/build/esm/DatePicker/index.js +0 -6
  384. package/build/esm/DatePicker/index.js.map +0 -1
  385. package/build/esm/hooks/useId.d.ts +0 -1
  386. package/build/esm/hooks/useId.js +0 -25
  387. package/build/esm/hooks/useId.js.map +0 -1
  388. package/build/esm/utils/assignRef.d.ts +0 -3
  389. package/build/esm/utils/assignRef.js +0 -25
  390. package/build/esm/utils/assignRef.js.map +0 -1
  391. package/build/esm/utils/getCircularIndex.d.ts +0 -1
  392. package/build/esm/utils/getCircularIndex.js +0 -8
  393. package/build/esm/utils/getCircularIndex.js.map +0 -1
  394. package/build/esm/utils/rubberBandClamp.d.ts +0 -2
  395. package/build/esm/utils/rubberBandClamp.js +0 -20
  396. package/build/esm/utils/rubberBandClamp.js.map +0 -1
  397. package/build/esm/utils/wrapEvent.d.ts +0 -3
  398. package/build/esm/utils/wrapEvent.js +0 -16
  399. package/build/esm/utils/wrapEvent.js.map +0 -1
  400. package/build/tsconfig.tsbuildinfo +0 -7270
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/Fader.tsx"],"names":["React","forwardRef","Children","useMemo","useTransition","animated","getCircularIndex","useCarouselGestures","useCarouselContext","faderConfig","tension","friction","clamp","Fader","ref","as","Comp","maybeSingleChildren","children","springConfig","mouseSwipe","touchSwipe","onSwipeLeft","onSwipeRight","otherProps","isRTL","currentSlide","nextSlideIndex","containerRef","toArray","transitions","config","from","opacity","enter","leave","handlers","onTouchStart","undefined","onMouseDown","style","item","idx","length"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,EAA4BC,QAA5B,EAAsCC,OAAtC,QAAqD,OAArD;AACA,SAASC,aAAT,EAAsCC,QAAtC,QAAsD,cAAtD;AACA,SAASC,gBAAT,QAAiC,2BAAjC;AACA,SAASC,mBAAT,QAAoC,uBAApC;AACA,SAASC,kBAAT,QAAmC,WAAnC;AAGA,OAAO,IAAMC,WAAyB,GAAG;AACvCC,EAAAA,OAAO,EAAE,GAD8B;AAEvCC,EAAAA,QAAQ,EAAE,EAF6B;AAGvCC,EAAAA,KAAK,EAAE;AAHgC,CAAlC;AAgBP,OAAO,IAAMC,KAAK,GAAGZ,UAAU,CAAC,SAASY,KAAT,OAW9BC,GAX8B,EAY9B;AAAA,qBAVEC,EAUF;AAAA,MAVMC,IAUN,wBAVa,KAUb;AAAA,MATYC,mBASZ,QATEC,QASF;AAAA,+BAREC,YAQF;AAAA,MAREA,YAQF,kCARiBV,WAQjB;AAAA,6BAPEW,UAOF;AAAA,MAPEA,UAOF,gCAPe,KAOf;AAAA,6BANEC,UAMF;AAAA,MANEA,UAMF,gCANe,KAMf;AAAA,MALEC,WAKF,QALEA,WAKF;AAAA,MAJEC,YAIF,QAJEA,YAIF;AAAA,MAHKC,UAGL;;AAAA,4BAKIhB,kBAAkB,EALtB;AAAA,kDAEEiB,KAFF;AAAA,MAEEA,KAFF,sCAEU,KAFV;AAAA,kDAGEC,YAHF;AAAA,MAGgBC,cAHhB,sCAGiC,CAHjC;AAAA,MAIEC,YAJF,uBAIEA,YAJF;;AAMA,MAAMV,QAAQ,GAAGf,OAAO,CAAC;AAAA,WAAMD,QAAQ,CAAC2B,OAAT,CAAiBZ,mBAAjB,CAAN;AAAA,GAAD,EAA8C,CACpEA,mBADoE,CAA9C,CAAxB;AAIA,MAAMa,WAAW,GAAG1B,aAAa,CAACuB,cAAD,EAAiB;AAChDI,IAAAA,MAAM,EAAEZ,YADwC;AAEhDa,IAAAA,IAAI,EAAE;AAAEC,MAAAA,OAAO,EAAE;AAAX,KAF0C;AAGhDC,IAAAA,KAAK,EAAE;AAAED,MAAAA,OAAO,EAAE;AAAX,KAHyC;AAIhDE,IAAAA,KAAK,EAAE;AAAEF,MAAAA,OAAO,EAAE;AAAX;AAJyC,GAAjB,CAAjC;;AAVA,6BAiBqB1B,mBAAmB,CAAC;AACvCe,IAAAA,WAAW,EAAXA,WADuC;AAEvCC,IAAAA,YAAY,EAAZA,YAFuC;AAGvCE,IAAAA,KAAK,EAALA,KAHuC;AAIvCG,IAAAA,YAAY,EAAZA;AAJuC,GAAD,CAjBxC;AAAA,MAiBQQ,QAjBR,wBAiBQA,QAjBR;;AAwBA,sBACE,oBAAC,IAAD;AACE,IAAA,YAAY,EAAEf,UAAU,GAAGe,QAAQ,CAACC,YAAZ,GAA2BC,SADrD;AAEE,IAAA,WAAW,EAAElB,UAAU,GAAGgB,QAAQ,CAACG,WAAZ,GAA0BD,SAFnD;AAGE,iBAAU,QAHZ;AAIE,4BAAqB,EAJvB;AAKE,IAAA,GAAG,EAAExB;AALP,KAMMU,UANN,GAQGM,WAAW,CAAC,UAACU,KAAD,EAAQC,IAAR,EAAiB;AAC5B,QAAMC,GAAG,GAAGpC,gBAAgB,CAACmC,IAAD,EAAOvB,QAAQ,CAACyB,MAAhB,CAA5B;;AACA,QAAID,GAAG,KAAK,IAAZ,EAAkB;AAChB,0BAAO,oBAAC,QAAD,CAAU,IAAV;AAAe,QAAA,KAAK,EAAEF;AAAtB,SAA8BtB,QAAQ,CAACwB,GAAD,CAAtC,CAAP;AACD;;AAED,WAAO,IAAP;AACD,GAPW,CARd,CADF;AAmBD,CAvD8B,CAAxB","sourcesContent":["import React, { forwardRef, Children, useMemo } from 'react';\nimport { useTransition, SpringConfig, animated } from 'react-spring';\nimport { getCircularIndex } from '../utils/getCircularIndex';\nimport { useCarouselGestures } from './useCarouselGestures';\nimport { useCarouselContext } from './context';\nimport { GestureHandlersState } from '../hooks';\n\nexport const faderConfig: SpringConfig = {\n tension: 280,\n friction: 75,\n clamp: true,\n};\n\nexport interface FaderProps extends React.HTMLAttributes<HTMLDivElement> {\n as?: React.ElementType<any>;\n mouseSwipe?: boolean;\n touchSwipe?: boolean;\n onSwipeRight?: (s: Partial<GestureHandlersState>) => void;\n onSwipeLeft?: (s: Partial<GestureHandlersState>) => void;\n springConfig?: SpringConfig;\n children?: React.ReactNode[] | React.ReactNode;\n}\n\nexport const Fader = forwardRef(function Fader(\n {\n as: Comp = 'div',\n children: maybeSingleChildren,\n springConfig = faderConfig,\n mouseSwipe = false,\n touchSwipe = false,\n onSwipeLeft,\n onSwipeRight,\n ...otherProps\n }: FaderProps,\n ref: React.Ref<HTMLDivElement>\n) {\n const {\n isRTL = false,\n currentSlide: nextSlideIndex = 0,\n containerRef,\n } = useCarouselContext();\n const children = useMemo(() => Children.toArray(maybeSingleChildren), [\n maybeSingleChildren,\n ]);\n\n const transitions = useTransition(nextSlideIndex, {\n config: springConfig,\n from: { opacity: 0 },\n enter: { opacity: 1 },\n leave: { opacity: 0 },\n });\n\n const { handlers } = useCarouselGestures({\n onSwipeLeft,\n onSwipeRight,\n isRTL,\n containerRef,\n });\n\n return (\n <Comp\n onTouchStart={touchSwipe ? handlers.onTouchStart : undefined}\n onMouseDown={mouseSwipe ? handlers.onMouseDown : undefined}\n aria-live=\"polite\"\n data-carousel-slider=\"\"\n ref={ref}\n {...otherProps}\n >\n {transitions((style, item) => {\n const idx = getCircularIndex(item, children.length);\n if (idx !== null) {\n return <animated.span style={style}>{children[idx]}</animated.span>;\n }\n\n return null;\n })}\n </Comp>\n );\n});\n"],"file":"Fader.js"}
@@ -1,5 +0,0 @@
1
- import React from 'react';
2
- export interface FaderItemProps extends React.HTMLAttributes<HTMLDivElement> {
3
- as?: React.ElementType<any>;
4
- }
5
- export declare const FaderItem: React.ForwardRefExoticComponent<FaderItemProps & React.RefAttributes<HTMLDivElement>>;
@@ -1,16 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import React, { forwardRef } from 'react';
4
- export var FaderItem = forwardRef(function FaderItem(_ref, ref) {
5
- var _ref$as = _ref.as,
6
- Comp = _ref$as === void 0 ? 'div' : _ref$as,
7
- props = _objectWithoutProperties(_ref, ["as"]);
8
-
9
- return /*#__PURE__*/React.createElement(Comp, _extends({
10
- role: "group",
11
- "aria-roledescription": "slide",
12
- "data-carousel-fader-item": "",
13
- ref: ref
14
- }, props));
15
- });
16
- //# sourceMappingURL=FaderItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/FaderItem.tsx"],"names":["React","forwardRef","FaderItem","ref","as","Comp","props"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AAMA,OAAO,IAAMC,SAAS,GAAGD,UAAU,CACjC,SAASC,SAAT,OAAmDC,GAAnD,EAAwD;AAAA,qBAAnCC,EAAmC;AAAA,MAA/BC,IAA+B,wBAAxB,KAAwB;AAAA,MAAdC,KAAc;;AACtD,sBACE,oBAAC,IAAD;AACE,IAAA,IAAI,EAAC,OADP;AAEE,4BAAqB,OAFvB;AAGE,gCAAyB,EAH3B;AAIE,IAAA,GAAG,EAAEH;AAJP,KAKMG,KALN,EADF;AASD,CAXgC,CAA5B","sourcesContent":["import React, { forwardRef } from 'react';\n\nexport interface FaderItemProps extends React.HTMLAttributes<HTMLDivElement> {\n as?: React.ElementType<any>;\n}\n\nexport const FaderItem = forwardRef<HTMLDivElement, FaderItemProps>(\n function FaderItem({ as: Comp = 'div', ...props }, ref) {\n return (\n <Comp\n role=\"group\"\n aria-roledescription=\"slide\"\n data-carousel-fader-item=\"\"\n ref={ref}\n {...props}\n />\n );\n }\n);\n"],"file":"FaderItem.js"}
@@ -1,7 +0,0 @@
1
- import React from 'react';
2
- export interface PreloaderProps {
3
- children: React.ReactNode[] | React.ReactNode;
4
- preloadNextCount?: number;
5
- preloadPrevCount?: number;
6
- }
7
- export declare const Preloader: React.ForwardRefExoticComponent<PreloaderProps & React.RefAttributes<HTMLDivElement>>;
@@ -1,70 +0,0 @@
1
- import React, { Children, forwardRef, cloneElement, useEffect, useRef } from 'react';
2
- import { useCarouselContext } from './context';
3
- import { getCircularIndex } from '../utils/getCircularIndex';
4
- export var Preloader = forwardRef(function Preloader(_ref, ref) {
5
- var maybeSingleChildren = _ref.children,
6
- _ref$preloadNextCount = _ref.preloadNextCount,
7
- preloadNextCount = _ref$preloadNextCount === void 0 ? 0 : _ref$preloadNextCount,
8
- _ref$preloadPrevCount = _ref.preloadPrevCount,
9
- preloadPrevCount = _ref$preloadPrevCount === void 0 ? 0 : _ref$preloadPrevCount;
10
-
11
- var _useCarouselContext = useCarouselContext(),
12
- currentSlide = _useCarouselContext.currentSlide,
13
- slidesToShow = _useCarouselContext.slidesToShow;
14
-
15
- var preloadedImagesCache = useRef({});
16
- var childrenRef = useRef(maybeSingleChildren);
17
- useEffect(function () {
18
- if (maybeSingleChildren !== childrenRef.current) {
19
- // clear cache
20
- childrenRef.current = maybeSingleChildren;
21
- preloadedImagesCache.current = {};
22
- }
23
- }, [maybeSingleChildren]);
24
- var children = Children.toArray(maybeSingleChildren);
25
-
26
- if (preloadNextCount > 0 && preloadPrevCount > 0 && children.length > 0) {
27
- var ret = [];
28
-
29
- for (var i = currentSlide - preloadPrevCount; i <= currentSlide + (slidesToShow - 1) + preloadNextCount; i += 1) {
30
- var idx = getCircularIndex(i, children.length);
31
-
32
- if (!idx) {
33
- continue;
34
- }
35
-
36
- if ( // ignore images currently rendered in carousel
37
- i >= currentSlide && i <= currentSlide + (slidesToShow - 1) || // ignore images we've already preloaded first
38
- preloadedImagesCache.current[idx]) {
39
- // set images rendered as already preloaded
40
- preloadedImagesCache.current[idx] = true;
41
- continue;
42
- }
43
-
44
- preloadedImagesCache.current[idx] = true;
45
- ret.push(cloneElement(children[idx], {
46
- 'data-carousel-preload': idx
47
- }));
48
- }
49
-
50
- if (ret.length > 0) {
51
- return /*#__PURE__*/React.createElement("div", {
52
- ref: ref,
53
- "data-carousel-preloader": true,
54
- "aria-hidden": true,
55
- style: {
56
- width: '1px',
57
- height: '0px',
58
- padding: '0',
59
- overflow: 'hidden',
60
- position: 'fixed',
61
- top: '1px',
62
- left: '1px'
63
- }
64
- }, ret);
65
- }
66
- }
67
-
68
- return null;
69
- });
70
- //# sourceMappingURL=Preloader.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/Preloader.tsx"],"names":["React","Children","forwardRef","cloneElement","useEffect","useRef","useCarouselContext","getCircularIndex","Preloader","ref","maybeSingleChildren","children","preloadNextCount","preloadPrevCount","currentSlide","slidesToShow","preloadedImagesCache","childrenRef","current","toArray","length","ret","i","idx","push","width","height","padding","overflow","position","top","left"],"mappings":"AAAA,OAAOA,KAAP,IACEC,QADF,EAEEC,UAFF,EAGEC,YAHF,EAIEC,SAJF,EAKEC,MALF,QAMO,OANP;AAOA,SAASC,kBAAT,QAAmC,WAAnC;AACA,SAASC,gBAAT,QAAiC,2BAAjC;AAQA,OAAO,IAAMC,SAAS,GAAGN,UAAU,CACjC,SAASM,SAAT,OAMEC,GANF,EAOE;AAAA,MALYC,mBAKZ,QALEC,QAKF;AAAA,mCAJEC,gBAIF;AAAA,MAJEA,gBAIF,sCAJqB,CAIrB;AAAA,mCAHEC,gBAGF;AAAA,MAHEA,gBAGF,sCAHqB,CAGrB;;AAAA,4BACuCP,kBAAkB,EADzD;AAAA,MACQQ,YADR,uBACQA,YADR;AAAA,MACsBC,YADtB,uBACsBA,YADtB;;AAEA,MAAMC,oBAAoB,GAAGX,MAAM,CAAC,EAAD,CAAnC;AACA,MAAMY,WAAW,GAAGZ,MAAM,CAACK,mBAAD,CAA1B;AAEAN,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIM,mBAAmB,KAAKO,WAAW,CAACC,OAAxC,EAAiD;AAC/C;AACAD,MAAAA,WAAW,CAACC,OAAZ,GAAsBR,mBAAtB;AACAM,MAAAA,oBAAoB,CAACE,OAArB,GAA+B,EAA/B;AACD;AACF,GANQ,EAMN,CAACR,mBAAD,CANM,CAAT;AAQA,MAAMC,QAAQ,GAAGV,QAAQ,CAACkB,OAAT,CAAiBT,mBAAjB,CAAjB;;AAEA,MAAIE,gBAAgB,GAAG,CAAnB,IAAwBC,gBAAgB,GAAG,CAA3C,IAAgDF,QAAQ,CAACS,MAAT,GAAkB,CAAtE,EAAyE;AACvE,QAAMC,GAAyB,GAAG,EAAlC;;AACA,SACE,IAAIC,CAAC,GAAGR,YAAY,GAAGD,gBADzB,EAEES,CAAC,IAAIR,YAAY,IAAIC,YAAY,GAAG,CAAnB,CAAZ,GAAoCH,gBAF3C,EAGEU,CAAC,IAAI,CAHP,EAIE;AACA,UAAMC,GAAG,GAAGhB,gBAAgB,CAACe,CAAD,EAAIX,QAAQ,CAACS,MAAb,CAA5B;;AACA,UAAI,CAACG,GAAL,EAAU;AACR;AACD;;AAED,WACE;AACCD,MAAAA,CAAC,IAAIR,YAAL,IAAqBQ,CAAC,IAAIR,YAAY,IAAIC,YAAY,GAAG,CAAnB,CAAvC,IACA;AACAC,MAAAA,oBAAoB,CAACE,OAArB,CAA6BK,GAA7B,CAJF,EAKE;AACA;AACAP,QAAAA,oBAAoB,CAACE,OAArB,CAA6BK,GAA7B,IAAoC,IAApC;AACA;AACD;;AAEDP,MAAAA,oBAAoB,CAACE,OAArB,CAA6BK,GAA7B,IAAoC,IAApC;AACAF,MAAAA,GAAG,CAACG,IAAJ,CACErB,YAAY,CAACQ,QAAQ,CAACY,GAAD,CAAT,EAA2C;AACrD,iCAAyBA;AAD4B,OAA3C,CADd;AAKD;;AAED,QAAIF,GAAG,CAACD,MAAJ,GAAa,CAAjB,EAAoB;AAClB,0BACE;AACE,QAAA,GAAG,EAAEX,GADP;AAEE,uCAFF;AAGE,2BAHF;AAIE,QAAA,KAAK,EAAE;AACLgB,UAAAA,KAAK,EAAE,KADF;AAELC,UAAAA,MAAM,EAAE,KAFH;AAGLC,UAAAA,OAAO,EAAE,GAHJ;AAILC,UAAAA,QAAQ,EAAE,QAJL;AAKLC,UAAAA,QAAQ,EAAE,OALL;AAMLC,UAAAA,GAAG,EAAE,KANA;AAOLC,UAAAA,IAAI,EAAE;AAPD;AAJT,SAcGV,GAdH,CADF;AAkBD;AACF;;AAED,SAAO,IAAP;AACD,CA7EgC,CAA5B","sourcesContent":["import React, {\n Children,\n forwardRef,\n cloneElement,\n useEffect,\n useRef,\n} from 'react';\nimport { useCarouselContext } from './context';\nimport { getCircularIndex } from '../utils/getCircularIndex';\n\nexport interface PreloaderProps {\n children: React.ReactNode[] | React.ReactNode;\n preloadNextCount?: number;\n preloadPrevCount?: number;\n}\n\nexport const Preloader = forwardRef<HTMLDivElement, PreloaderProps>(\n function Preloader(\n {\n children: maybeSingleChildren,\n preloadNextCount = 0,\n preloadPrevCount = 0,\n },\n ref\n ) {\n const { currentSlide, slidesToShow } = useCarouselContext();\n const preloadedImagesCache = useRef({});\n const childrenRef = useRef(maybeSingleChildren);\n\n useEffect(() => {\n if (maybeSingleChildren !== childrenRef.current) {\n // clear cache\n childrenRef.current = maybeSingleChildren;\n preloadedImagesCache.current = {};\n }\n }, [maybeSingleChildren]);\n\n const children = Children.toArray(maybeSingleChildren);\n\n if (preloadNextCount > 0 && preloadPrevCount > 0 && children.length > 0) {\n const ret: React.ReactElement[] = [];\n for (\n let i = currentSlide - preloadPrevCount;\n i <= currentSlide + (slidesToShow - 1) + preloadNextCount;\n i += 1\n ) {\n const idx = getCircularIndex(i, children.length);\n if (!idx) {\n continue;\n }\n\n if (\n // ignore images currently rendered in carousel\n (i >= currentSlide && i <= currentSlide + (slidesToShow - 1)) ||\n // ignore images we've already preloaded first\n preloadedImagesCache.current[idx]\n ) {\n // set images rendered as already preloaded\n preloadedImagesCache.current[idx] = true;\n continue;\n }\n\n preloadedImagesCache.current[idx] = true;\n ret.push(\n cloneElement(children[idx] as React.ReactElement<any>, {\n 'data-carousel-preload': idx,\n })\n );\n }\n\n if (ret.length > 0) {\n return (\n <div\n ref={ref}\n data-carousel-preloader\n aria-hidden\n style={{\n width: '1px',\n height: '0px',\n padding: '0',\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px',\n }}\n >\n {ret}\n </div>\n );\n }\n }\n\n return null;\n }\n);\n"],"file":"Preloader.js"}
@@ -1,14 +0,0 @@
1
- import React from 'react';
2
- import { SpringConfig } from 'react-spring';
3
- import { GestureHandlersState } from '../hooks';
4
- export declare const sliderConfig: SpringConfig;
5
- export interface SliderProps extends React.HTMLAttributes<HTMLDivElement> {
6
- as?: React.ElementType<any>;
7
- mouseSwipe?: boolean;
8
- touchSwipe?: boolean;
9
- onSwipeRight?: (s: Partial<GestureHandlersState>) => void;
10
- onSwipeLeft?: (s: Partial<GestureHandlersState>) => void;
11
- springConfig?: SpringConfig;
12
- children?: React.ReactNode[] | React.ReactNode;
13
- }
14
- export declare const Slider: React.ForwardRefExoticComponent<SliderProps & React.RefAttributes<HTMLDivElement>>;
@@ -1,212 +0,0 @@
1
- import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import _extends from "@babel/runtime/helpers/esm/extends";
4
- import React, { useRef, useReducer, useEffect, useMemo, Children, forwardRef } from 'react';
5
- import { useSpring, animated } from 'react-spring';
6
- import { SliderItemRenderer } from './SliderItem';
7
- import { useCarouselContext } from './context';
8
- import { getSliderParams } from './getSliderParams';
9
- import { useCarouselGestures } from './useCarouselGestures';
10
- export var sliderConfig = {
11
- tension: 230,
12
- friction: 20,
13
- clamp: true
14
- };
15
- var SET_CURRENT_SLIDER_INDEX = 'setCurrentSlideIndex';
16
- var SET_SHOULD_ANIMATE_TO_REST = 'setShouldAnimateToRest';
17
- var TRIGGER_RERENDER = 'triggerRerender';
18
-
19
- function reducer(prevState, action) {
20
- switch (action.type) {
21
- case SET_CURRENT_SLIDER_INDEX:
22
- return _extends(_extends({}, prevState), {}, {
23
- currentSlideIndex: action.payload,
24
- shouldAnimateToRest: false
25
- });
26
-
27
- case SET_SHOULD_ANIMATE_TO_REST:
28
- return _extends(_extends({}, prevState), {}, {
29
- shouldAnimateToRest: action.payload
30
- });
31
-
32
- case TRIGGER_RERENDER:
33
- return _extends({}, prevState);
34
- }
35
- }
36
-
37
- var noop = function noop() {
38
- /* null function to be used on onRest and onFrame */
39
- };
40
-
41
- export var Slider = forwardRef(function Slider(_ref, ref) {
42
- var _ref$as = _ref.as,
43
- Comp = _ref$as === void 0 ? animated.div : _ref$as,
44
- maybeSingleChildren = _ref.children,
45
- _ref$springConfig = _ref.springConfig,
46
- springConfig = _ref$springConfig === void 0 ? sliderConfig : _ref$springConfig,
47
- mouseSwipe = _ref.mouseSwipe,
48
- touchSwipe = _ref.touchSwipe,
49
- onSwipeLeft = _ref.onSwipeLeft,
50
- onSwipeRight = _ref.onSwipeRight,
51
- style = _ref.style,
52
- otherProps = _objectWithoutProperties(_ref, ["as", "children", "springConfig", "mouseSwipe", "touchSwipe", "onSwipeLeft", "onSwipeRight", "style"]);
53
-
54
- var _useCarouselContext = useCarouselContext(),
55
- _useCarouselContext$i = _useCarouselContext.isRTL,
56
- isRTL = _useCarouselContext$i === void 0 ? false : _useCarouselContext$i,
57
- _useCarouselContext$s = _useCarouselContext.slidesToShow,
58
- slidesToShow = _useCarouselContext$s === void 0 ? 1 : _useCarouselContext$s,
59
- _useCarouselContext$c = _useCarouselContext.currentSlide,
60
- nextSlideIndex = _useCarouselContext$c === void 0 ? 0 : _useCarouselContext$c,
61
- containerRef = _useCarouselContext.containerRef,
62
- itemWidth = _useCarouselContext.itemWidth;
63
-
64
- var _useReducer = useReducer(reducer, {
65
- currentSlideIndex: nextSlideIndex,
66
- shouldAnimateToRest: false
67
- }),
68
- _useReducer2 = _slicedToArray(_useReducer, 2),
69
- _useReducer2$ = _useReducer2[0],
70
- currentSlideIndex = _useReducer2$.currentSlideIndex,
71
- shouldAnimateToRest = _useReducer2$.shouldAnimateToRest,
72
- dispatch = _useReducer2[1]; // Convert children from possibly empty, or 1 child, to array of nodes
73
-
74
-
75
- var children = useMemo(function () {
76
- return Children.toArray(maybeSingleChildren);
77
- }, [maybeSingleChildren]); // Keep record of animation frames
78
-
79
- var lastAnimationX = useRef(0); // Keep record of drag positioning, to forceUpdate when dragging slides
80
-
81
- var lastDragX = useRef(NaN); // Animation properties... will be update via setAnimationProps
82
-
83
- var _useSpring = useSpring({
84
- to: {
85
- x: 0
86
- },
87
- config: springConfig
88
- }, []),
89
- _useSpring2 = _slicedToArray(_useSpring, 2),
90
- animationProps = _useSpring2[0],
91
- setAnimationProps = _useSpring2[1]; // Keep track of animation values, to allow
92
- // us to pause animation with mouse click
93
-
94
-
95
- var onChange = function onChange(e) {
96
- lastAnimationX.current = e.x || 0;
97
- }; // Called when the next slide animation is complete
98
-
99
-
100
- var onNextSlideComplete = function onNextSlideComplete() {
101
- // need this to stay in sync with setAnimationProps
102
- requestAnimationFrame(function () {
103
- dispatch({
104
- type: SET_CURRENT_SLIDER_INDEX,
105
- payload: nextSlideIndex
106
- });
107
- lastAnimationX.current = 0;
108
- setAnimationProps({
109
- x: 0,
110
- immediate: true,
111
- onRest: noop,
112
- onChange: noop
113
- });
114
- });
115
- }; // Called when you started dragging, but didn't drag long enough,
116
- // so it will rest back to zero
117
-
118
-
119
- var onRestAnimationComplete = function onRestAnimationComplete() {
120
- lastAnimationX.current = 0;
121
- dispatch({
122
- type: SET_SHOULD_ANIMATE_TO_REST,
123
- payload: false
124
- });
125
- };
126
-
127
- var onDrag = function onDrag(s) {
128
- if (s.down) {
129
- var x = lastAnimationX.current + s.xDeltaPercent;
130
- setAnimationProps({
131
- x: x,
132
- immediate: true,
133
- onRest: noop,
134
- onChange: noop
135
- });
136
-
137
- if (x === 0) {
138
- return;
139
- }
140
-
141
- if (s.xDeltaPercent !== 0 && !Object.is(Math.trunc(lastDragX.current / itemWidth), Math.trunc(x / itemWidth))) {
142
- // flipping signal, or adding more async slides
143
- requestAnimationFrame(function () {
144
- dispatch({
145
- type: SET_SHOULD_ANIMATE_TO_REST,
146
- payload: true
147
- });
148
- });
149
- }
150
-
151
- lastDragX.current = x;
152
- } else {
153
- setAnimationProps({
154
- x: 0,
155
- onRest: onRestAnimationComplete,
156
- onChange: onChange,
157
- immediate: false
158
- });
159
- lastDragX.current = NaN; // force a rerender to make sure it will still work
160
- // when you pause in the middle of a slide transition
161
-
162
- dispatch({
163
- type: TRIGGER_RERENDER
164
- });
165
- }
166
- };
167
-
168
- var _useCarouselGestures = useCarouselGestures({
169
- isRTL: isRTL,
170
- onSwipeRight: onSwipeRight,
171
- onSwipeLeft: onSwipeLeft,
172
- onDrag: onDrag,
173
- containerRef: containerRef,
174
- slidesToShow: slidesToShow
175
- }),
176
- handlers = _useCarouselGestures.handlers,
177
- gestureState = _useCarouselGestures.state;
178
-
179
- var deltaX = gestureState.down || shouldAnimateToRest ? lastAnimationX.current + gestureState.xDeltaPercent : 0;
180
- /* Slide animation parameters */
181
-
182
- var params = getSliderParams(children.length, currentSlideIndex, nextSlideIndex, slidesToShow, gestureState.down, deltaX, isRTL);
183
- useEffect(function () {
184
- if (nextSlideIndex !== currentSlideIndex) {
185
- setAnimationProps({
186
- x: params.targetX,
187
- onRest: onNextSlideComplete,
188
- onChange: onChange,
189
- immediate: false
190
- });
191
- }
192
- });
193
- return /*#__PURE__*/React.createElement(Comp, _extends({
194
- ref: ref,
195
- onTouchStart: touchSwipe ? handlers.onTouchStart : undefined,
196
- onMouseDown: mouseSwipe ? handlers.onMouseDown : undefined,
197
- "aria-live": "polite",
198
- "data-carousel-slider": "",
199
- dir: isRTL ? 'rtl' : undefined,
200
- style: _extends({
201
- left: params.left,
202
- paddingRight: params.paddingRight,
203
- transform: animationProps.x.to(function (t) {
204
- return "translateX(".concat(t, "%)");
205
- })
206
- }, style)
207
- }, otherProps), /*#__PURE__*/React.createElement(SliderItemRenderer, {
208
- startingIndex: params.startingIndex,
209
- count: params.count
210
- }, children));
211
- });
212
- //# sourceMappingURL=Slider.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/Slider.tsx"],"names":["React","useRef","useReducer","useEffect","useMemo","Children","forwardRef","useSpring","animated","SliderItemRenderer","useCarouselContext","getSliderParams","useCarouselGestures","sliderConfig","tension","friction","clamp","SET_CURRENT_SLIDER_INDEX","SET_SHOULD_ANIMATE_TO_REST","TRIGGER_RERENDER","reducer","prevState","action","type","currentSlideIndex","payload","shouldAnimateToRest","noop","Slider","ref","as","Comp","div","maybeSingleChildren","children","springConfig","mouseSwipe","touchSwipe","onSwipeLeft","onSwipeRight","style","otherProps","isRTL","slidesToShow","currentSlide","nextSlideIndex","containerRef","itemWidth","dispatch","toArray","lastAnimationX","lastDragX","NaN","to","x","config","animationProps","setAnimationProps","onChange","e","current","onNextSlideComplete","requestAnimationFrame","immediate","onRest","onRestAnimationComplete","onDrag","s","down","xDeltaPercent","Object","is","Math","trunc","handlers","gestureState","state","deltaX","params","length","targetX","onTouchStart","undefined","onMouseDown","left","paddingRight","transform","t","startingIndex","count"],"mappings":"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","sourcesContent":["import React, {\n useRef,\n useReducer,\n useEffect,\n useMemo,\n Children,\n forwardRef,\n} from 'react';\nimport { useSpring, SpringConfig, animated } from 'react-spring';\nimport { SliderItemRenderer } from './SliderItem';\nimport { useCarouselContext } from './context';\nimport { getSliderParams } from './getSliderParams';\nimport { useCarouselGestures } from './useCarouselGestures';\nimport { GestureHandlersState } from '../hooks';\n\nexport const sliderConfig: SpringConfig = {\n tension: 230,\n friction: 20,\n clamp: true,\n};\n\nexport interface SliderProps extends React.HTMLAttributes<HTMLDivElement> {\n as?: React.ElementType<any>;\n mouseSwipe?: boolean;\n touchSwipe?: boolean;\n onSwipeRight?: (s: Partial<GestureHandlersState>) => void;\n onSwipeLeft?: (s: Partial<GestureHandlersState>) => void;\n springConfig?: SpringConfig;\n children?: React.ReactNode[] | React.ReactNode;\n}\n\ninterface SliderState {\n currentSlideIndex: number;\n shouldAnimateToRest: boolean;\n}\n\nconst SET_CURRENT_SLIDER_INDEX = 'setCurrentSlideIndex';\nconst SET_SHOULD_ANIMATE_TO_REST = 'setShouldAnimateToRest';\nconst TRIGGER_RERENDER = 'triggerRerender';\n\ninterface SliderSetPreviousSlideIndex {\n type: typeof SET_CURRENT_SLIDER_INDEX;\n payload: number;\n}\n\ninterface SlideSetRestAnimating {\n type: typeof SET_SHOULD_ANIMATE_TO_REST;\n payload: boolean;\n}\n\ninterface SlideTriggerRerender {\n type: typeof TRIGGER_RERENDER;\n}\n\ntype SliderAction =\n | SliderSetPreviousSlideIndex\n | SlideSetRestAnimating\n | SlideTriggerRerender;\n\nfunction reducer<T>(\n prevState: Readonly<SliderState>,\n action: SliderAction\n): SliderState {\n switch (action.type) {\n case SET_CURRENT_SLIDER_INDEX:\n return {\n ...prevState,\n currentSlideIndex: action.payload,\n shouldAnimateToRest: false,\n };\n case SET_SHOULD_ANIMATE_TO_REST:\n return { ...prevState, shouldAnimateToRest: action.payload };\n case TRIGGER_RERENDER:\n return { ...prevState };\n }\n}\n\nconst noop = () => {\n /* null function to be used on onRest and onFrame */\n};\n\nexport const Slider = forwardRef<HTMLDivElement, SliderProps>(function Slider(\n {\n as: Comp = animated.div,\n children: maybeSingleChildren,\n springConfig = sliderConfig,\n mouseSwipe,\n touchSwipe,\n onSwipeLeft,\n onSwipeRight,\n style,\n ...otherProps\n },\n ref\n) {\n const {\n isRTL = false,\n slidesToShow = 1,\n currentSlide: nextSlideIndex = 0,\n containerRef,\n itemWidth,\n } = useCarouselContext();\n\n const [{ currentSlideIndex, shouldAnimateToRest }, dispatch] = useReducer(\n reducer,\n {\n currentSlideIndex: nextSlideIndex,\n shouldAnimateToRest: false,\n }\n );\n\n // Convert children from possibly empty, or 1 child, to array of nodes\n const children = useMemo(() => Children.toArray(maybeSingleChildren), [\n maybeSingleChildren,\n ]);\n\n // Keep record of animation frames\n const lastAnimationX = useRef(0);\n\n // Keep record of drag positioning, to forceUpdate when dragging slides\n const lastDragX = useRef(NaN);\n\n // Animation properties... will be update via setAnimationProps\n const [animationProps, setAnimationProps] = useSpring<{ x: number }>(\n {\n to: { x: 0 },\n config: springConfig,\n },\n []\n );\n\n // Keep track of animation values, to allow\n // us to pause animation with mouse click\n const onChange = (e: { x: number }) => {\n lastAnimationX.current = e.x || 0;\n };\n\n // Called when the next slide animation is complete\n const onNextSlideComplete = () => {\n // need this to stay in sync with setAnimationProps\n requestAnimationFrame(() => {\n dispatch({ type: SET_CURRENT_SLIDER_INDEX, payload: nextSlideIndex });\n lastAnimationX.current = 0;\n setAnimationProps({\n x: 0,\n immediate: true,\n onRest: noop,\n onChange: noop,\n });\n });\n };\n\n // Called when you started dragging, but didn't drag long enough,\n // so it will rest back to zero\n const onRestAnimationComplete = () => {\n lastAnimationX.current = 0;\n dispatch({ type: SET_SHOULD_ANIMATE_TO_REST, payload: false });\n };\n\n const onDrag = (s: GestureHandlersState) => {\n if (s.down) {\n const x = lastAnimationX.current + s.xDeltaPercent;\n setAnimationProps({\n x,\n immediate: true,\n onRest: noop,\n onChange: noop,\n });\n\n if (x === 0) {\n return;\n }\n\n if (\n s.xDeltaPercent !== 0 &&\n !Object.is(\n Math.trunc(lastDragX.current / itemWidth),\n Math.trunc(x / itemWidth)\n )\n ) {\n // flipping signal, or adding more async slides\n requestAnimationFrame(() => {\n dispatch({ type: SET_SHOULD_ANIMATE_TO_REST, payload: true });\n });\n }\n\n lastDragX.current = x;\n } else {\n setAnimationProps({\n x: 0,\n onRest: onRestAnimationComplete,\n onChange: onChange,\n immediate: false,\n });\n\n lastDragX.current = NaN;\n\n // force a rerender to make sure it will still work\n // when you pause in the middle of a slide transition\n dispatch({ type: TRIGGER_RERENDER });\n }\n };\n\n const { handlers, state: gestureState } = useCarouselGestures({\n isRTL,\n onSwipeRight,\n onSwipeLeft,\n onDrag,\n containerRef,\n slidesToShow,\n });\n\n const deltaX =\n gestureState.down || shouldAnimateToRest\n ? lastAnimationX.current + gestureState.xDeltaPercent\n : 0;\n\n /* Slide animation parameters */\n const params = getSliderParams(\n children.length,\n currentSlideIndex,\n nextSlideIndex,\n slidesToShow,\n gestureState.down,\n deltaX,\n isRTL\n );\n\n useEffect(() => {\n if (nextSlideIndex !== currentSlideIndex) {\n setAnimationProps({\n x: params.targetX,\n onRest: onNextSlideComplete,\n onChange,\n immediate: false,\n });\n }\n });\n\n return (\n <Comp\n ref={ref}\n onTouchStart={touchSwipe ? handlers.onTouchStart : undefined}\n onMouseDown={mouseSwipe ? handlers.onMouseDown : undefined}\n aria-live=\"polite\"\n data-carousel-slider=\"\"\n dir={isRTL ? 'rtl' : undefined}\n style={{\n left: params.left,\n paddingRight: params.paddingRight,\n transform: animationProps.x.to((t) => {\n return `translateX(${t}%)`;\n }),\n ...(style as any),\n }}\n {...otherProps}\n >\n <SliderItemRenderer\n startingIndex={params.startingIndex}\n count={params.count}\n >\n {children}\n </SliderItemRenderer>\n </Comp>\n );\n});\n"],"file":"Slider.js"}
@@ -1,12 +0,0 @@
1
- import React from 'react';
2
- export interface SliderItemProps extends React.HTMLAttributes<HTMLDivElement> {
3
- as?: React.ElementType<any>;
4
- }
5
- export declare const SliderItem: React.ForwardRefExoticComponent<SliderItemProps & React.RefAttributes<HTMLDivElement>>;
6
- interface SliderItemRendererProps {
7
- children: React.ReactNode[];
8
- startingIndex: number;
9
- count: number;
10
- }
11
- export declare const SliderItemRenderer: ({ children, startingIndex, count, }: SliderItemRendererProps) => JSX.Element;
12
- export default SliderItem;
@@ -1,41 +0,0 @@
1
- import _extends from "@babel/runtime/helpers/esm/extends";
2
- import _objectWithoutProperties from "@babel/runtime/helpers/esm/objectWithoutProperties";
3
- import React, { forwardRef } from 'react';
4
- import { getCircularIndex } from '../utils/getCircularIndex';
5
- export var SliderItem = forwardRef(function SliderItem(_ref, ref) {
6
- var _ref$as = _ref.as,
7
- Comp = _ref$as === void 0 ? 'div' : _ref$as,
8
- props = _objectWithoutProperties(_ref, ["as"]);
9
-
10
- return /*#__PURE__*/React.createElement(Comp, _extends({
11
- ref: ref,
12
- role: "group",
13
- "aria-roledescription": "slide",
14
- "data-carousel-slider-item": ""
15
- }, props));
16
- });
17
- export var SliderItemRenderer = function SliderItemRenderer(_ref2) {
18
- var children = _ref2.children,
19
- startingIndex = _ref2.startingIndex,
20
- count = _ref2.count;
21
- var ret = [];
22
- var itemsLen = children.length;
23
- var finalIndex = startingIndex + count;
24
- var counter = 0;
25
-
26
- for (var i = startingIndex; i < finalIndex; i += 1, counter += 1) {
27
- if (counter % itemsLen === 0) {
28
- ret.push([]);
29
- }
30
-
31
- var index = getCircularIndex(i, itemsLen);
32
-
33
- if (index !== null) {
34
- ret[ret.length - 1].push(children[index]);
35
- }
36
- }
37
-
38
- return /*#__PURE__*/React.createElement(React.Fragment, null, ret);
39
- };
40
- export default SliderItem;
41
- //# sourceMappingURL=SliderItem.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/SliderItem.tsx"],"names":["React","forwardRef","getCircularIndex","SliderItem","ref","as","Comp","props","SliderItemRenderer","children","startingIndex","count","ret","itemsLen","length","finalIndex","counter","i","push","index"],"mappings":";;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAkC,OAAlC;AACA,SAASC,gBAAT,QAAiC,2BAAjC;AAMA,OAAO,IAAMC,UAAU,GAAGF,UAAU,CAClC,SAASE,UAAT,OAEEC,GAFF,EAGE;AAAA,qBAFEC,EAEF;AAAA,MAFMC,IAEN,wBAFa,KAEb;AAAA,MAFuBC,KAEvB;;AACA,sBACE,oBAAC,IAAD;AACE,IAAA,GAAG,EAAEH,GADP;AAEE,IAAA,IAAI,EAAC,OAFP;AAGE,4BAAqB,OAHvB;AAIE,iCAA0B;AAJ5B,KAKMG,KALN,EADF;AASD,CAdiC,CAA7B;AAuBP,OAAO,IAAMC,kBAAkB,GAAG,SAASA,kBAAT,QAIN;AAAA,MAH1BC,QAG0B,SAH1BA,QAG0B;AAAA,MAF1BC,aAE0B,SAF1BA,aAE0B;AAAA,MAD1BC,KAC0B,SAD1BA,KAC0B;AAC1B,MAAMC,GAAwB,GAAG,EAAjC;AACA,MAAMC,QAAQ,GAAGJ,QAAQ,CAACK,MAA1B;AACA,MAAMC,UAAU,GAAGL,aAAa,GAAGC,KAAnC;AAEA,MAAIK,OAAO,GAAG,CAAd;;AACA,OAAK,IAAIC,CAAC,GAAGP,aAAb,EAA4BO,CAAC,GAAGF,UAAhC,EAA4CE,CAAC,IAAI,CAAL,EAAQD,OAAO,IAAI,CAA/D,EAAkE;AAChE,QAAIA,OAAO,GAAGH,QAAV,KAAuB,CAA3B,EAA8B;AAC5BD,MAAAA,GAAG,CAACM,IAAJ,CAAS,EAAT;AACD;;AACD,QAAMC,KAAK,GAAGjB,gBAAgB,CAACe,CAAD,EAAIJ,QAAJ,CAA9B;;AACA,QAAIM,KAAK,KAAK,IAAd,EAAoB;AAClBP,MAAAA,GAAG,CAACA,GAAG,CAACE,MAAJ,GAAa,CAAd,CAAH,CAAoBI,IAApB,CAAyBT,QAAQ,CAACU,KAAD,CAAjC;AACD;AACF;;AAED,sBAAO,oBAAC,KAAD,CAAO,QAAP,QAAiBP,GAAjB,CAAP;AACD,CArBM;AAuBP,eAAeT,UAAf","sourcesContent":["import React, { forwardRef } from 'react';\nimport { getCircularIndex } from '../utils/getCircularIndex';\n\nexport interface SliderItemProps extends React.HTMLAttributes<HTMLDivElement> {\n as?: React.ElementType<any>;\n}\n\nexport const SliderItem = forwardRef<HTMLDivElement, SliderItemProps>(\n function SliderItem(\n { as: Comp = 'div', ...props },\n ref: React.Ref<HTMLDivElement>\n ) {\n return (\n <Comp\n ref={ref}\n role=\"group\"\n aria-roledescription=\"slide\"\n data-carousel-slider-item=\"\"\n {...props}\n />\n );\n }\n);\n\ninterface SliderItemRendererProps {\n children: React.ReactNode[];\n startingIndex: number;\n count: number;\n}\n\nexport const SliderItemRenderer = function SliderItemRenderer({\n children,\n startingIndex,\n count,\n}: SliderItemRendererProps) {\n const ret: React.ReactNode[][] = [];\n const itemsLen = children.length;\n const finalIndex = startingIndex + count;\n\n let counter = 0;\n for (let i = startingIndex; i < finalIndex; i += 1, counter += 1) {\n if (counter % itemsLen === 0) {\n ret.push([]);\n }\n const index = getCircularIndex(i, itemsLen);\n if (index !== null) {\n ret[ret.length - 1].push(children[index]);\n }\n }\n\n return <React.Fragment>{ret}</React.Fragment>;\n};\n\nexport default SliderItem;\n"],"file":"SliderItem.js"}
@@ -1,10 +0,0 @@
1
- /// <reference types="react" />
2
- export interface CarouselContextProps {
3
- slidesToShow: number;
4
- isRTL: boolean;
5
- currentSlide: number;
6
- itemWidth: number;
7
- containerRef: React.MutableRefObject<HTMLElement | null>;
8
- }
9
- export declare const CarouselProvider: import("react").Provider<CarouselContextProps>;
10
- export declare const useCarouselContext: () => CarouselContextProps;
@@ -1,8 +0,0 @@
1
- import { createContext, useContext } from 'react';
2
- var carouselContext = createContext(null);
3
- var CarouselProvider = carouselContext.Provider;
4
- export { CarouselProvider };
5
- export var useCarouselContext = function useCarouselContext() {
6
- return useContext(carouselContext);
7
- };
8
- //# sourceMappingURL=context.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/context.ts"],"names":["createContext","useContext","carouselContext","CarouselProvider","Provider","useCarouselContext"],"mappings":"AAAA,SAASA,aAAT,EAAwBC,UAAxB,QAA0C,OAA1C;AAUA,IAAMC,eAAe,GAAGF,aAAa,CAAuB,IAAvB,CAArC;IACyBG,gB,GAAqBD,e,CAA/BE,Q;;AACf,OAAO,IAAMC,kBAAkB,GAAG,SAArBA,kBAAqB;AAAA,SAAMJ,UAAU,CAACC,eAAD,CAAhB;AAAA,CAA3B","sourcesContent":["import { createContext, useContext } from 'react';\n\nexport interface CarouselContextProps {\n slidesToShow: number;\n isRTL: boolean;\n currentSlide: number;\n itemWidth: number;\n containerRef: React.MutableRefObject<HTMLElement | null>;\n}\n\nconst carouselContext = createContext<CarouselContextProps>(null as any);\nexport const { Provider: CarouselProvider } = carouselContext;\nexport const useCarouselContext = () => useContext(carouselContext);\n"],"file":"context.js"}
@@ -1,9 +0,0 @@
1
- export declare function getSlidesToScroll(curSlide: number, nextSlide: number, deltaX: number, itemWidth: number): number;
2
- export declare function getSliderParams(numAvailableSlides: number, curSlide: number, nextSlide: number, slidesToShow: number, dragging: boolean, deltaX: number, isRTL: boolean): {
3
- startingIndex: number;
4
- count: number;
5
- left: string | undefined;
6
- targetX: number;
7
- itemWidth: number;
8
- paddingRight: string | undefined;
9
- };
@@ -1,85 +0,0 @@
1
- var AnimationState;
2
-
3
- (function (AnimationState) {
4
- AnimationState[AnimationState["LEFT"] = -1] = "LEFT";
5
- AnimationState[AnimationState["NONE"] = 0] = "NONE";
6
- AnimationState[AnimationState["RIGHT"] = 1] = "RIGHT";
7
- })(AnimationState || (AnimationState = {}));
8
-
9
- function getAnimationState(animationEnabled, nextSlide, currentSlide, deltaX, isRTL) {
10
- if (deltaX === 0 && (!animationEnabled || nextSlide === currentSlide)) {
11
- return AnimationState.NONE;
12
- }
13
-
14
- if (deltaX < 0 || nextSlide > currentSlide && !isRTL || nextSlide < currentSlide && isRTL) {
15
- return AnimationState.RIGHT;
16
- }
17
-
18
- return AnimationState.LEFT;
19
- }
20
-
21
- function getSlideIndex(curSlide, nextSlide, deltaX, slidesToScroll, isRTL) {
22
- if (deltaX > 0 && !isRTL || deltaX < 0 && isRTL) {
23
- return curSlide - slidesToScroll;
24
- }
25
-
26
- return Math.min(curSlide, nextSlide);
27
- }
28
-
29
- function getLeftOffset(animationState, itemWidth, slidesToScroll, isRTL) {
30
- if (animationState === AnimationState.LEFT && !isRTL) {
31
- return "".concat(-itemWidth * slidesToScroll, "%");
32
- }
33
-
34
- if (animationState === AnimationState.RIGHT && isRTL) {
35
- return "".concat(itemWidth * slidesToScroll, "%");
36
- }
37
-
38
- return undefined;
39
- }
40
-
41
- function getSpringTarget(drag, deltaX, animationState, itemWidth, slidesToScroll) {
42
- if (drag) {
43
- return deltaX;
44
- }
45
-
46
- if (animationState === AnimationState.LEFT) {
47
- return itemWidth * slidesToScroll;
48
- }
49
-
50
- if (animationState === AnimationState.RIGHT) {
51
- return -itemWidth * slidesToScroll;
52
- }
53
-
54
- return 0;
55
- }
56
-
57
- export function getSlidesToScroll(curSlide, nextSlide, deltaX, itemWidth) {
58
- var dragSlideCount = deltaX !== 0 ? 1 + Math.floor(Math.abs(deltaX) / itemWidth) : 0;
59
- var slideCount = Math.abs(nextSlide - curSlide);
60
- return Math.max(dragSlideCount, slideCount);
61
- }
62
- export function getSliderParams(numAvailableSlides, curSlide, nextSlide, slidesToShow, dragging, deltaX, isRTL) {
63
- // The size in percentage that each slide will ocupy
64
- var itemWidth = 100 / slidesToShow;
65
- var animationEnabled = numAvailableSlides >= slidesToShow; // if we don't have enough children to animate, we will fulfill
66
- // the remaining space with a padding to the right
67
-
68
- var paddingRight = animationEnabled ? undefined : "".concat(itemWidth * (slidesToShow - numAvailableSlides), "%");
69
- var animationState = getAnimationState(animationEnabled, nextSlide, curSlide, deltaX, isRTL);
70
- var slidesToScroll = getSlidesToScroll(curSlide, nextSlide, deltaX, itemWidth);
71
- var startingIndex = getSlideIndex(curSlide, nextSlide, deltaX, slidesToScroll, isRTL);
72
- var count = slidesToShow + (animationState !== AnimationState.NONE ? slidesToScroll : 0); // shift items to the left for animation effect
73
-
74
- var left = getLeftOffset(animationState, itemWidth, slidesToScroll, isRTL);
75
- var targetX = getSpringTarget(dragging, deltaX, nextSlide !== curSlide ? animationState : AnimationState.NONE, itemWidth, Math.abs(nextSlide - curSlide));
76
- return {
77
- startingIndex: startingIndex,
78
- count: count,
79
- left: left,
80
- targetX: targetX,
81
- itemWidth: itemWidth,
82
- paddingRight: paddingRight
83
- };
84
- }
85
- //# sourceMappingURL=getSliderParams.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/getSliderParams.ts"],"names":["AnimationState","getAnimationState","animationEnabled","nextSlide","currentSlide","deltaX","isRTL","NONE","RIGHT","LEFT","getSlideIndex","curSlide","slidesToScroll","Math","min","getLeftOffset","animationState","itemWidth","undefined","getSpringTarget","drag","getSlidesToScroll","dragSlideCount","floor","abs","slideCount","max","getSliderParams","numAvailableSlides","slidesToShow","dragging","paddingRight","startingIndex","count","left","targetX"],"mappings":"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","sourcesContent":["enum AnimationState {\n LEFT = -1,\n NONE = 0,\n RIGHT = 1,\n}\n\nfunction getAnimationState(\n animationEnabled: boolean,\n nextSlide: number,\n currentSlide: number,\n deltaX: number,\n isRTL: boolean\n): AnimationState {\n if (deltaX === 0 && (!animationEnabled || nextSlide === currentSlide)) {\n return AnimationState.NONE;\n }\n\n if (\n deltaX < 0 ||\n (nextSlide > currentSlide && !isRTL) ||\n (nextSlide < currentSlide && isRTL)\n ) {\n return AnimationState.RIGHT;\n }\n\n return AnimationState.LEFT;\n}\n\nfunction getSlideIndex(\n curSlide: number,\n nextSlide: number,\n deltaX: number,\n slidesToScroll: number,\n isRTL: boolean\n) {\n if ((deltaX > 0 && !isRTL) || (deltaX < 0 && isRTL)) {\n return curSlide - slidesToScroll;\n }\n\n return Math.min(curSlide, nextSlide);\n}\n\nfunction getLeftOffset(\n animationState: AnimationState,\n itemWidth: number,\n slidesToScroll: number,\n isRTL: boolean\n) {\n if (animationState === AnimationState.LEFT && !isRTL) {\n return `${-itemWidth * slidesToScroll}%`;\n }\n if (animationState === AnimationState.RIGHT && isRTL) {\n return `${itemWidth * slidesToScroll}%`;\n }\n\n return undefined;\n}\n\nfunction getSpringTarget(\n drag: boolean,\n deltaX: number,\n animationState: AnimationState,\n itemWidth: number,\n slidesToScroll: number\n) {\n if (drag) {\n return deltaX;\n }\n if (animationState === AnimationState.LEFT) {\n return itemWidth * slidesToScroll;\n }\n if (animationState === AnimationState.RIGHT) {\n return -itemWidth * slidesToScroll;\n }\n\n return 0;\n}\n\nexport function getSlidesToScroll(\n curSlide: number,\n nextSlide: number,\n deltaX: number,\n itemWidth: number\n) {\n const dragSlideCount =\n deltaX !== 0 ? 1 + Math.floor(Math.abs(deltaX) / itemWidth) : 0;\n const slideCount = Math.abs(nextSlide - curSlide);\n\n return Math.max(dragSlideCount, slideCount);\n}\n\nexport function getSliderParams(\n numAvailableSlides: number,\n curSlide: number,\n nextSlide: number,\n slidesToShow: number,\n dragging: boolean,\n deltaX: number,\n isRTL: boolean\n) {\n // The size in percentage that each slide will ocupy\n const itemWidth = 100 / slidesToShow;\n\n const animationEnabled = numAvailableSlides >= slidesToShow;\n // if we don't have enough children to animate, we will fulfill\n // the remaining space with a padding to the right\n const paddingRight = animationEnabled\n ? undefined\n : `${itemWidth * (slidesToShow - numAvailableSlides)}%`;\n\n const animationState = getAnimationState(\n animationEnabled,\n nextSlide,\n curSlide,\n deltaX,\n isRTL\n );\n\n const slidesToScroll = getSlidesToScroll(\n curSlide,\n nextSlide,\n deltaX,\n itemWidth\n );\n\n const startingIndex = getSlideIndex(\n curSlide,\n nextSlide,\n deltaX,\n slidesToScroll,\n isRTL\n );\n const count =\n slidesToShow +\n (animationState !== AnimationState.NONE ? slidesToScroll : 0);\n\n // shift items to the left for animation effect\n const left = getLeftOffset(animationState, itemWidth, slidesToScroll, isRTL);\n\n const targetX = getSpringTarget(\n dragging,\n deltaX,\n nextSlide !== curSlide ? animationState : AnimationState.NONE,\n itemWidth,\n Math.abs(nextSlide - curSlide)\n );\n\n return { startingIndex, count, left, targetX, itemWidth, paddingRight };\n}\n"],"file":"getSliderParams.js"}
@@ -1,7 +0,0 @@
1
- export * from './Carousel';
2
- export * from './Slider';
3
- export * from './Fader';
4
- export * from './SliderItem';
5
- export * from './FaderItem';
6
- export * from './Preloader';
7
- export * from './context';
@@ -1,8 +0,0 @@
1
- export * from './Carousel';
2
- export * from './Slider';
3
- export * from './Fader';
4
- export * from './SliderItem';
5
- export * from './FaderItem';
6
- export * from './Preloader';
7
- export * from './context';
8
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../../../src/Carousel/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAd;AACA,cAAc,UAAd;AACA,cAAc,SAAd;AACA,cAAc,cAAd;AACA,cAAc,aAAd;AACA,cAAc,aAAd;AACA,cAAc,WAAd","sourcesContent":["export * from './Carousel';\nexport * from './Slider';\nexport * from './Fader';\nexport * from './SliderItem';\nexport * from './FaderItem';\nexport * from './Preloader';\nexport * from './context';\n"],"file":"index.js"}