@openameba/spindle-ui 0.25.2-alpha.0 → 0.26.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (395) hide show
  1. package/CHANGELOG.md +3 -18
  2. package/HeroCarousel/HeroCarousel.css +1 -0
  3. package/HeroCarousel/HeroCarousel.d.ts +8 -0
  4. package/HeroCarousel/HeroCarousel.d.ts.map +1 -0
  5. package/HeroCarousel/HeroCarousel.js +35 -0
  6. package/HeroCarousel/HeroCarousel.js.map +1 -0
  7. package/HeroCarousel/HeroCarouselItem.css +1 -0
  8. package/HeroCarousel/HeroCarouselItem.d.ts +15 -0
  9. package/HeroCarousel/HeroCarouselItem.d.ts.map +1 -0
  10. package/HeroCarousel/HeroCarouselItem.js +47 -0
  11. package/HeroCarousel/HeroCarouselItem.js.map +1 -0
  12. package/HeroCarousel/hooks/useAutoPlayCarousel.d.ts +27 -0
  13. package/HeroCarousel/hooks/useAutoPlayCarousel.d.ts.map +1 -0
  14. package/HeroCarousel/hooks/useAutoPlayCarousel.js +168 -0
  15. package/HeroCarousel/hooks/useAutoPlayCarousel.js.map +1 -0
  16. package/HeroCarousel/hooks/useAutoSlide.d.ts +13 -0
  17. package/HeroCarousel/hooks/useAutoSlide.d.ts.map +1 -0
  18. package/HeroCarousel/hooks/useAutoSlide.js +46 -0
  19. package/HeroCarousel/hooks/useAutoSlide.js.map +1 -0
  20. package/HeroCarousel/hooks/useCarouselFocus.d.ts +11 -0
  21. package/HeroCarousel/hooks/useCarouselFocus.d.ts.map +1 -0
  22. package/HeroCarousel/hooks/useCarouselFocus.js +28 -0
  23. package/HeroCarousel/hooks/useCarouselFocus.js.map +1 -0
  24. package/HeroCarousel/hooks/useSliderMoveEvent.d.ts +10 -0
  25. package/HeroCarousel/hooks/useSliderMoveEvent.d.ts.map +1 -0
  26. package/HeroCarousel/hooks/useSliderMoveEvent.js +52 -0
  27. package/HeroCarousel/hooks/useSliderMoveEvent.js.map +1 -0
  28. package/HeroCarousel/hooks/useSliderTransition.d.ts +20 -0
  29. package/HeroCarousel/hooks/useSliderTransition.d.ts.map +1 -0
  30. package/HeroCarousel/hooks/useSliderTransition.js +36 -0
  31. package/HeroCarousel/hooks/useSliderTransition.js.map +1 -0
  32. package/HeroCarousel/hooks/useValueRef.d.ts +3 -0
  33. package/HeroCarousel/hooks/useValueRef.d.ts.map +1 -0
  34. package/HeroCarousel/hooks/useValueRef.js +13 -0
  35. package/HeroCarousel/hooks/useValueRef.js.map +1 -0
  36. package/HeroCarousel/index.d.ts +2 -0
  37. package/HeroCarousel/index.d.ts.map +1 -0
  38. package/HeroCarousel/index.js +6 -0
  39. package/HeroCarousel/index.js.map +1 -0
  40. package/README.md +1 -3
  41. package/index.css +1 -1
  42. package/index.d.ts +2 -1
  43. package/index.d.ts.map +1 -1
  44. package/index.js +3 -1
  45. package/index.js.map +1 -1
  46. package/package.json +5 -13
  47. package/Button/Button.mjs +0 -7
  48. package/Button/index.mjs +0 -1
  49. package/ButtonGroup/ButtonGroup.mjs +0 -13
  50. package/ButtonGroup/index.mjs +0 -1
  51. package/Form/Checkbox.mjs +0 -11
  52. package/Form/DropDown.mjs +0 -38
  53. package/Form/InlineDropDown.mjs +0 -30
  54. package/Form/InputLabel.mjs +0 -5
  55. package/Form/InvalidMessage.mjs +0 -9
  56. package/Form/Radio.mjs +0 -11
  57. package/Form/TextArea.mjs +0 -5
  58. package/Form/TextField.mjs +0 -9
  59. package/Form/ToggleSwitch.mjs +0 -8
  60. package/Form/index.mjs +0 -8
  61. package/Icon/755.mjs +0 -6
  62. package/Icon/Abemakun.mjs +0 -6
  63. package/Icon/Abematv.mjs +0 -6
  64. package/Icon/Accesslink.mjs +0 -6
  65. package/Icon/Accesspage.mjs +0 -6
  66. package/Icon/AccesspageFill.mjs +0 -6
  67. package/Icon/AddressbookFill.mjs +0 -6
  68. package/Icon/AlbumAddFill.mjs +0 -6
  69. package/Icon/AlbumFill.mjs +0 -6
  70. package/Icon/AlignCenter.mjs +0 -6
  71. package/Icon/AlignLeft.mjs +0 -6
  72. package/Icon/AlignRight.mjs +0 -6
  73. package/Icon/AllFill.mjs +0 -6
  74. package/Icon/Amebacoin.mjs +0 -6
  75. package/Icon/Amebapick.mjs +0 -9
  76. package/Icon/Amegold.mjs +0 -6
  77. package/Icon/Amember.mjs +0 -6
  78. package/Icon/ArrowDown.mjs +0 -6
  79. package/Icon/ArrowDownBold.mjs +0 -6
  80. package/Icon/ArrowLeft.mjs +0 -6
  81. package/Icon/ArrowLeftBold.mjs +0 -6
  82. package/Icon/ArrowRight.mjs +0 -6
  83. package/Icon/ArrowRightBold.mjs +0 -6
  84. package/Icon/ArrowRightCircle.mjs +0 -6
  85. package/Icon/ArrowRightCircleFill.mjs +0 -6
  86. package/Icon/ArrowUp.mjs +0 -6
  87. package/Icon/ArrowUpBold.mjs +0 -6
  88. package/Icon/ArrowpagingDown.mjs +0 -6
  89. package/Icon/ArrowpagingDownCircle.mjs +0 -6
  90. package/Icon/ArrowpagingLeft.mjs +0 -6
  91. package/Icon/ArrowpagingLeftCircle.mjs +0 -6
  92. package/Icon/ArrowpagingRight.mjs +0 -6
  93. package/Icon/ArrowpagingRightCircle.mjs +0 -6
  94. package/Icon/ArrowpagingUp.mjs +0 -6
  95. package/Icon/ArrowpagingUpCircle.mjs +0 -6
  96. package/Icon/Article.mjs +0 -6
  97. package/Icon/ArticleSlash.mjs +0 -6
  98. package/Icon/Articledesign.mjs +0 -6
  99. package/Icon/Astrogy.mjs +0 -6
  100. package/Icon/AstrogyFill.mjs +0 -6
  101. package/Icon/Baby.mjs +0 -7
  102. package/Icon/Bbs.mjs +0 -6
  103. package/Icon/Beginner.mjs +0 -6
  104. package/Icon/Bell.mjs +0 -6
  105. package/Icon/BellFill.mjs +0 -6
  106. package/Icon/BellFillSlash.mjs +0 -6
  107. package/Icon/BellSlash.mjs +0 -6
  108. package/Icon/Blog.mjs +0 -6
  109. package/Icon/Bold.mjs +0 -6
  110. package/Icon/Book.mjs +0 -6
  111. package/Icon/BookFill.mjs +0 -6
  112. package/Icon/Bookmark.mjs +0 -6
  113. package/Icon/BookmarkFill.mjs +0 -6
  114. package/Icon/Bookshelf.mjs +0 -6
  115. package/Icon/BookshelfFill.mjs +0 -6
  116. package/Icon/Border.mjs +0 -6
  117. package/Icon/BottomnavFollowfeedActive.mjs +0 -6
  118. package/Icon/BottomnavFollowfeedInactive.mjs +0 -6
  119. package/Icon/BottomnavHomeActive.mjs +0 -6
  120. package/Icon/BottomnavHomeInactive.mjs +0 -6
  121. package/Icon/BottomnavMypageActive.mjs +0 -6
  122. package/Icon/BottomnavSearchActive.mjs +0 -6
  123. package/Icon/BottomnavSearchInactive.mjs +0 -6
  124. package/Icon/BottomnvavMypageInactive.mjs +0 -6
  125. package/Icon/Bullets.mjs +0 -6
  126. package/Icon/Calendar.mjs +0 -6
  127. package/Icon/CameraFill.mjs +0 -6
  128. package/Icon/CautionFill.mjs +0 -6
  129. package/Icon/Check.mjs +0 -6
  130. package/Icon/CheckBold.mjs +0 -6
  131. package/Icon/CheckCircle.mjs +0 -6
  132. package/Icon/CheckCircleFill.mjs +0 -6
  133. package/Icon/CheckRectangle.mjs +0 -6
  134. package/Icon/Checklist.mjs +0 -6
  135. package/Icon/ChevronDown.mjs +0 -6
  136. package/Icon/ChevronDownBold.mjs +0 -6
  137. package/Icon/ChevronLeft.mjs +0 -6
  138. package/Icon/ChevronLeftBold.mjs +0 -6
  139. package/Icon/ChevronRight.mjs +0 -6
  140. package/Icon/ChevronRightBold.mjs +0 -6
  141. package/Icon/ChevronUp.mjs +0 -6
  142. package/Icon/ChevronUpBold.mjs +0 -6
  143. package/Icon/Circle.mjs +0 -6
  144. package/Icon/CircleBold.mjs +0 -6
  145. package/Icon/CircleFill.mjs +0 -6
  146. package/Icon/Clock.mjs +0 -6
  147. package/Icon/ClockFill.mjs +0 -6
  148. package/Icon/Coin.mjs +0 -6
  149. package/Icon/Comment.mjs +0 -6
  150. package/Icon/CommentFill.mjs +0 -6
  151. package/Icon/CommentPen.mjs +0 -6
  152. package/Icon/CommentTwoFill.mjs +0 -6
  153. package/Icon/CommentTwoSlashFill.mjs +0 -6
  154. package/Icon/Community.mjs +0 -6
  155. package/Icon/Compass.mjs +0 -7
  156. package/Icon/Coupon.mjs +0 -6
  157. package/Icon/Crop.mjs +0 -6
  158. package/Icon/CropDin.mjs +0 -6
  159. package/Icon/CropLandscape.mjs +0 -6
  160. package/Icon/Cross.mjs +0 -6
  161. package/Icon/CrossBold.mjs +0 -6
  162. package/Icon/CrossCircle.mjs +0 -6
  163. package/Icon/CrossCircleFill.mjs +0 -6
  164. package/Icon/CrossRectangle.mjs +0 -6
  165. package/Icon/Cutlery.mjs +0 -6
  166. package/Icon/DiamondTwo.mjs +0 -11
  167. package/Icon/Dice.mjs +0 -7
  168. package/Icon/Dot.mjs +0 -6
  169. package/Icon/Dotmoney.mjs +0 -6
  170. package/Icon/Download.mjs +0 -6
  171. package/Icon/Embed.mjs +0 -6
  172. package/Icon/EmotionFill.mjs +0 -6
  173. package/Icon/EntryLost.mjs +0 -6
  174. package/Icon/Exclamationmark.mjs +0 -6
  175. package/Icon/ExclamationmarkBalloon.mjs +0 -6
  176. package/Icon/ExclamationmarkBalloonFill.mjs +0 -6
  177. package/Icon/ExclamationmarkBold.mjs +0 -6
  178. package/Icon/ExclamationmarkCircle.mjs +0 -6
  179. package/Icon/ExclamationmarkCircleFill.mjs +0 -6
  180. package/Icon/Expand.mjs +0 -6
  181. package/Icon/ExpandExit.mjs +0 -6
  182. package/Icon/Facebook.mjs +0 -6
  183. package/Icon/File.mjs +0 -6
  184. package/Icon/FileAdd.mjs +0 -6
  185. package/Icon/FileAddFill.mjs +0 -6
  186. package/Icon/FileCircle.mjs +0 -6
  187. package/Icon/FileCircleFill.mjs +0 -6
  188. package/Icon/FileFill.mjs +0 -6
  189. package/Icon/Filter.mjs +0 -6
  190. package/Icon/FilterCheck.mjs +0 -6
  191. package/Icon/Fit.mjs +0 -6
  192. package/Icon/FlagFill.mjs +0 -6
  193. package/Icon/FlagRanking.mjs +0 -6
  194. package/Icon/FlagRankingTrim.mjs +0 -10
  195. package/Icon/Flash.mjs +0 -6
  196. package/Icon/FlashAuto.mjs +0 -6
  197. package/Icon/FlashOff.mjs +0 -6
  198. package/Icon/Flowervase.mjs +0 -6
  199. package/Icon/Folder.mjs +0 -6
  200. package/Icon/FolderFill.mjs +0 -6
  201. package/Icon/FolderTwo.mjs +0 -6
  202. package/Icon/FolderTwoFill.mjs +0 -6
  203. package/Icon/Font.mjs +0 -6
  204. package/Icon/Fontstyle.mjs +0 -6
  205. package/Icon/Game.mjs +0 -6
  206. package/Icon/GameFill.mjs +0 -6
  207. package/Icon/GameKantan.mjs +0 -6
  208. package/Icon/Gear.mjs +0 -6
  209. package/Icon/GearFill.mjs +0 -6
  210. package/Icon/Genre.mjs +0 -6
  211. package/Icon/GenreAdd.mjs +0 -6
  212. package/Icon/GenreDone.mjs +0 -6
  213. package/Icon/GraphBar.mjs +0 -6
  214. package/Icon/Gruppo.mjs +0 -6
  215. package/Icon/HandWaveFill.mjs +0 -6
  216. package/Icon/Hatenabookmark.mjs +0 -6
  217. package/Icon/Heart.mjs +0 -6
  218. package/Icon/HeartFill.mjs +0 -6
  219. package/Icon/History.mjs +0 -6
  220. package/Icon/HomeFill.mjs +0 -6
  221. package/Icon/Hot.mjs +0 -6
  222. package/Icon/Htmltag.mjs +0 -6
  223. package/Icon/ImageAddFill.mjs +0 -6
  224. package/Icon/ImageBanFill.mjs +0 -6
  225. package/Icon/ImageFill.mjs +0 -6
  226. package/Icon/ImageFillSlash.mjs +0 -6
  227. package/Icon/ImageQuestionFill.mjs +0 -6
  228. package/Icon/Information.mjs +0 -6
  229. package/Icon/Instagram.mjs +0 -6
  230. package/Icon/Italic.mjs +0 -6
  231. package/Icon/Kaomoji.mjs +0 -6
  232. package/Icon/Keyboard.mjs +0 -6
  233. package/Icon/KeyboardDownFill.mjs +0 -6
  234. package/Icon/KeyboardFill.mjs +0 -6
  235. package/Icon/Koeblog.mjs +0 -6
  236. package/Icon/LineCircle.mjs +0 -6
  237. package/Icon/LineSquare.mjs +0 -6
  238. package/Icon/Link.mjs +0 -6
  239. package/Icon/ListBulleted.mjs +0 -6
  240. package/Icon/ListNumbered.mjs +0 -6
  241. package/Icon/Loading.mjs +0 -6
  242. package/Icon/LockFill.mjs +0 -6
  243. package/Icon/LockOpenFill.mjs +0 -6
  244. package/Icon/Magicwand.mjs +0 -6
  245. package/Icon/Mail.mjs +0 -6
  246. package/Icon/MailCheck.mjs +0 -6
  247. package/Icon/MailCircle.mjs +0 -6
  248. package/Icon/MailCircleFill.mjs +0 -6
  249. package/Icon/MailFill.mjs +0 -6
  250. package/Icon/Megaphone.mjs +0 -6
  251. package/Icon/MenuHamburger.mjs +0 -6
  252. package/Icon/MenuHamburgerBold.mjs +0 -6
  253. package/Icon/MenuHamburgerFourline.mjs +0 -6
  254. package/Icon/MenuHorizotal.mjs +0 -6
  255. package/Icon/MenuVertical.mjs +0 -6
  256. package/Icon/Messageboard.mjs +0 -6
  257. package/Icon/Microphone.mjs +0 -6
  258. package/Icon/MicrophoneFill.mjs +0 -6
  259. package/Icon/Minus.mjs +0 -6
  260. package/Icon/MinusBold.mjs +0 -6
  261. package/Icon/Moon.mjs +0 -6
  262. package/Icon/MoonFill.mjs +0 -6
  263. package/Icon/MovieCameraFill.mjs +0 -6
  264. package/Icon/MoviePlay.mjs +0 -6
  265. package/Icon/MoviePlayFill.mjs +0 -6
  266. package/Icon/MovieStop.mjs +0 -6
  267. package/Icon/MusicFill.mjs +0 -6
  268. package/Icon/New.mjs +0 -6
  269. package/Icon/Newbook.mjs +0 -6
  270. package/Icon/NewbookFill.mjs +0 -6
  271. package/Icon/News.mjs +0 -6
  272. package/Icon/Nice.mjs +0 -6
  273. package/Icon/NiceDone.mjs +0 -6
  274. package/Icon/Nodate.mjs +0 -6
  275. package/Icon/Now.mjs +0 -6
  276. package/Icon/Officialstar.mjs +0 -6
  277. package/Icon/OfficialstarFill.mjs +0 -6
  278. package/Icon/OnedariFill.mjs +0 -6
  279. package/Icon/OpenCl.mjs +0 -6
  280. package/Icon/Openblank.mjs +0 -6
  281. package/Icon/OpenblankFill.mjs +0 -6
  282. package/Icon/Ownd.mjs +0 -6
  283. package/Icon/PaletteFill.mjs +0 -6
  284. package/Icon/Pause.mjs +0 -6
  285. package/Icon/PauseBold.mjs +0 -6
  286. package/Icon/Pawprint.mjs +0 -6
  287. package/Icon/Pencil.mjs +0 -6
  288. package/Icon/PencilAdd.mjs +0 -6
  289. package/Icon/PencilBold.mjs +0 -6
  290. package/Icon/Person.mjs +0 -6
  291. package/Icon/PersonFill.mjs +0 -6
  292. package/Icon/PersonThreeFill.mjs +0 -6
  293. package/Icon/PersonTwoAddFill.mjs +0 -6
  294. package/Icon/PersonTwoDeleteFill.mjs +0 -6
  295. package/Icon/PersonTwoDoneFill.mjs +0 -6
  296. package/Icon/PersonTwoFill.mjs +0 -6
  297. package/Icon/Peta.mjs +0 -6
  298. package/Icon/Pigg.mjs +0 -6
  299. package/Icon/PinFill.mjs +0 -6
  300. package/Icon/PlayCircle.mjs +0 -6
  301. package/Icon/PlayFill.mjs +0 -6
  302. package/Icon/Plus.mjs +0 -6
  303. package/Icon/PlusBold.mjs +0 -6
  304. package/Icon/PlusCircle.mjs +0 -6
  305. package/Icon/PlusCircleFill.mjs +0 -6
  306. package/Icon/PremiumFill.mjs +0 -6
  307. package/Icon/Present.mjs +0 -6
  308. package/Icon/Profilecard.mjs +0 -6
  309. package/Icon/Qr.mjs +0 -6
  310. package/Icon/Question.mjs +0 -6
  311. package/Icon/QuestionmarkCircle.mjs +0 -6
  312. package/Icon/QuestionmarkCircleFill.mjs +0 -6
  313. package/Icon/RankingCrown.mjs +0 -6
  314. package/Icon/RankingCrownFill.mjs +0 -6
  315. package/Icon/RankingPlatformFill.mjs +0 -6
  316. package/Icon/Reblog.mjs +0 -6
  317. package/Icon/ReblogSlash.mjs +0 -6
  318. package/Icon/Redo.mjs +0 -6
  319. package/Icon/RedoBold.mjs +0 -6
  320. package/Icon/Refresh.mjs +0 -6
  321. package/Icon/ReplyCircleFill.mjs +0 -6
  322. package/Icon/ReplyFill.mjs +0 -6
  323. package/Icon/Requ.mjs +0 -6
  324. package/Icon/Sad.mjs +0 -6
  325. package/Icon/Saveblog.mjs +0 -6
  326. package/Icon/ScreenFull.mjs +0 -6
  327. package/Icon/ScreenInline.mjs +0 -6
  328. package/Icon/Search.mjs +0 -6
  329. package/Icon/Service.mjs +0 -6
  330. package/Icon/Share.mjs +0 -6
  331. package/Icon/ShineFill.mjs +0 -6
  332. package/Icon/Shirt.mjs +0 -6
  333. package/Icon/SidefaceClose.mjs +0 -6
  334. package/Icon/SidefaceOpen.mjs +0 -6
  335. package/Icon/Smartphone.mjs +0 -6
  336. package/Icon/SmartphoneFill.mjs +0 -6
  337. package/Icon/Sort.mjs +0 -6
  338. package/Icon/SortFeed.mjs +0 -6
  339. package/Icon/SortTile.mjs +0 -6
  340. package/Icon/SpeakerOffFill.mjs +0 -6
  341. package/Icon/SpeakerOnFill.mjs +0 -6
  342. package/Icon/Sprout.mjs +0 -6
  343. package/Icon/Stampside.mjs +0 -6
  344. package/Icon/Star.mjs +0 -6
  345. package/Icon/StarCircleFill.mjs +0 -6
  346. package/Icon/StarFaceFill.mjs +0 -6
  347. package/Icon/StarFill.mjs +0 -6
  348. package/Icon/StopFill.mjs +0 -6
  349. package/Icon/Strikethrough.mjs +0 -6
  350. package/Icon/Sun.mjs +0 -6
  351. package/Icon/SunFill.mjs +0 -6
  352. package/Icon/Switching.mjs +0 -6
  353. package/Icon/SwitchingCamera.mjs +0 -6
  354. package/Icon/TagFill.mjs +0 -6
  355. package/Icon/TagOfficialFill.mjs +0 -6
  356. package/Icon/Thumbsup.mjs +0 -6
  357. package/Icon/ThumbsupFill.mjs +0 -6
  358. package/Icon/Title.mjs +0 -6
  359. package/Icon/TopbloggerRibbon.mjs +0 -6
  360. package/Icon/TranscriptOff.mjs +0 -6
  361. package/Icon/TranscriptOn.mjs +0 -6
  362. package/Icon/Transmission.mjs +0 -6
  363. package/Icon/Trashcan.mjs +0 -6
  364. package/Icon/Trend.mjs +0 -6
  365. package/Icon/TrendFill.mjs +0 -6
  366. package/Icon/TriangleDown.mjs +0 -6
  367. package/Icon/TriangleLeft.mjs +0 -6
  368. package/Icon/TriangleRight.mjs +0 -6
  369. package/Icon/TriangleUp.mjs +0 -6
  370. package/Icon/TrianglearrowDown.mjs +0 -6
  371. package/Icon/TrianglearrowDownright.mjs +0 -6
  372. package/Icon/TrianglearrowRight.mjs +0 -6
  373. package/Icon/TrianglearrowUp.mjs +0 -6
  374. package/Icon/TrianglearrowUpright.mjs +0 -6
  375. package/Icon/TriangleendLeft.mjs +0 -6
  376. package/Icon/TriangleendRight.mjs +0 -6
  377. package/Icon/TrophyFill.mjs +0 -6
  378. package/Icon/TvFill.mjs +0 -6
  379. package/Icon/Twitter.mjs +0 -6
  380. package/Icon/Underline.mjs +0 -6
  381. package/Icon/Undo.mjs +0 -6
  382. package/Icon/UndoBold.mjs +0 -6
  383. package/Icon/Wallet.mjs +0 -6
  384. package/Icon/Webview.mjs +0 -6
  385. package/Icon/Youtube.mjs +0 -6
  386. package/Icon/index.mjs +0 -325
  387. package/IconButton/IconButton.mjs +0 -5
  388. package/IconButton/index.mjs +0 -1
  389. package/LinkButton/LinkButton.mjs +0 -7
  390. package/LinkButton/index.mjs +0 -1
  391. package/Toast/Toast.mjs +0 -67
  392. package/Toast/index.mjs +0 -1
  393. package/index.mjs +0 -9
  394. package/tsconfig.cjs.json +0 -10
  395. package/tsconfig.esm.json +0 -8
package/CHANGELOG.md CHANGED
@@ -3,12 +3,12 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
- ## [0.25.2-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.25.1...@openameba/spindle-ui@0.25.2-alpha.0) (2021-12-09)
6
+ # [0.26.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.25.1...@openameba/spindle-ui@0.26.0) (2022-02-21)
7
7
 
8
8
 
9
- ### Bug Fixes
9
+ ### Features
10
10
 
11
- * **spindle-ui:** set side effect for css ([bdf0c9f](https://github.com/openameba/spindle/commit/bdf0c9ff79a69ad9dd2706dcfe96bd29559b373e))
11
+ * **spindle-ui:** add HeroCarousel component ([d7e0a53](https://github.com/openameba/spindle/commit/d7e0a5302cfca4d7600188098ef4dd224998e2bb))
12
12
 
13
13
 
14
14
 
@@ -70,19 +70,12 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
70
70
  ### Features
71
71
 
72
72
  * **spindle-icons:** update icons ([39ce767](https://github.com/openameba/spindle/commit/39ce7673df4556ee3b9a6ea6dc62ad25236a6fc9))
73
- ## [0.22.1-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.22.0...@openameba/spindle-ui@0.22.1-alpha.0) (2021-09-06)
74
-
75
-
76
- ### Bug Fixes
77
-
78
- * **spindle-ui:** set side effect for css ([f26be31](https://github.com/openameba/spindle/commit/f26be31bf53ec73fbe00222773ba691809dae5d5))
79
73
 
80
74
 
81
75
 
82
76
 
83
77
 
84
78
  # [0.22.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.21.2...@openameba/spindle-ui@0.22.0) (2021-09-06)
85
- ## [0.21.3-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.21.2...@openameba/spindle-ui@0.21.3-alpha.0) (2021-07-30)
86
79
 
87
80
 
88
81
  ### Bug Fixes
@@ -104,14 +97,12 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
104
97
  ### BREAKING CHANGES
105
98
 
106
99
  * **spindle-icons,spindle-ui:** setting icon was renamed to gear
107
- * **spindle-ui:** set side effect for css ([ec4e8f1](https://github.com/openameba/spindle/commit/ec4e8f143cd6769cc6b3d49534233a46eaf79b2d))
108
100
 
109
101
 
110
102
 
111
103
 
112
104
 
113
105
  ## [0.21.2](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.21.1...@openameba/spindle-ui@0.21.2) (2021-07-30)
114
- ## [0.21.2-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.21.1...@openameba/spindle-ui@0.21.2-alpha.0) (2021-07-28)
115
106
 
116
107
  **Note:** Version bump only for package @openameba/spindle-ui
117
108
 
@@ -172,9 +163,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
172
163
  ### Features
173
164
 
174
165
  * **spindle-icons:** update icons ([ae07c8e](https://github.com/openameba/spindle/commit/ae07c8eca4f33789c45b3c3d6a2e7f8f17c11e81))
175
- ## [0.18.1-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.18.0...@openameba/spindle-ui@0.18.1-alpha.0) (2021-06-11)
176
-
177
- **Note:** Version bump only for package @openameba/spindle-ui
178
166
 
179
167
 
180
168
 
@@ -230,9 +218,6 @@ See [Conventional Commits](https://conventionalcommits.org) for commit guideline
230
218
  ### Bug Fixes
231
219
 
232
220
  * **spindle-ui:** fix CSS variable name ([f76d2ee](https://github.com/openameba/spindle/commit/f76d2ee1840574a1247a20ea1ee212b85d99708e))
233
- # [0.15.0-alpha.0](https://github.com/openameba/spindle/compare/@openameba/spindle-ui@0.14.0...@openameba/spindle-ui@0.15.0-alpha.0) (2021-03-15)
234
-
235
- **Note:** Version bump only for package @openameba/spindle-ui
236
221
 
237
222
 
238
223
 
@@ -0,0 +1 @@
1
+ :root{--HeroCarousel-onFocus-boxShadow:0 0 0 1px var(--color-surface-primary),0 0 0 3px var(--color-focus-clarity)}.spui-HeroCarousel-container{align-items:center;display:flex;height:11.6em;justify-content:center;overflow:hidden;padding:.6rem 0}.spui-HeroCarousel-list{display:flex;margin-right:.88em;padding:0 .44em;transition:transform .5s;width:16.7em}.spui-HeroCarousel-controls{align-items:center;border:1px solid var(--color-border-low-emphasis);border-radius:100px;display:flex;margin:.88em auto 0;width:-webkit-fit-content;width:-moz-fit-content;width:fit-content}.spui-HeroCarousel-control{align-items:center;background-color:transparent;border:none;display:flex;height:3em;justify-content:center;padding:0;width:3em}.spui-HeroCarousel-control:hover{opacity:.7}.spui-HeroCarousel-control:focus{box-shadow:var(--HeroCarousel-onFocus-boxShadow);outline:none}.spui-HeroCarousel-control:focus:not(:focus-visible){box-shadow:none}.spui-HeroCarousel-control--prev{border-radius:100px 0 0 100px;border-right:1px solid var(--color-border-low-emphasis)}.spui-HeroCarousel-control--next{border-left:1px solid var(--color-border-low-emphasis);border-radius:0 100px 100px 0}@media (prefers-reduced-motion:reduce){.spui-HeroCarousel-list{transition:1ms}}@media screen and (min-width:768px){.spui-HeroCarousel-container{height:13em}.spui-HeroCarousel-list{margin-right:1.5em;padding:0 .75em;width:18.5em}.spui-HeroCarousel-controls{margin-top:1.25em}.spui-HeroCarousel-control{height:3.3em;width:3.3em}}.spui-HeroCarousel-control>svg{color:var(--color-text-low-emphasis);height:1.35em;width:1.35em}@media screen and (min-width:768px){.spui-HeroCarousel-control>svg{height:1.5em;width:1.5em}}
@@ -0,0 +1,8 @@
1
+ import { FC } from 'react';
2
+ import type { CarouselItem } from './HeroCarouselItem';
3
+ declare type Props = {
4
+ carouselList: CarouselItem[];
5
+ };
6
+ export declare const HeroCarousel: FC<Props>;
7
+ export {};
8
+ //# sourceMappingURL=HeroCarousel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeroCarousel.d.ts","sourceRoot":"","sources":["../../src/HeroCarousel/HeroCarousel.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAKlC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAIvD,aAAK,KAAK,GAAG;IACX,YAAY,EAAE,YAAY,EAAE,CAAC;CAC9B,CAAC;AAKF,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,KAAK,CA0FjC,CAAC"}
@@ -0,0 +1,35 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.HeroCarousel = void 0;
7
+ var react_1 = __importDefault(require("react"));
8
+ var ChevronLeftBold_1 = __importDefault(require("../Icon/ChevronLeftBold"));
9
+ var ChevronRightBold_1 = __importDefault(require("../Icon/ChevronRightBold"));
10
+ var Pause_1 = __importDefault(require("../Icon/Pause"));
11
+ var PlayFill_1 = __importDefault(require("../Icon/PlayFill"));
12
+ var HeroCarouselItem_1 = __importDefault(require("./HeroCarouselItem"));
13
+ var useAutoPlayCarousel_1 = require("./hooks/useAutoPlayCarousel");
14
+ var BLOCK_NAME = 'spui-HeroCarousel';
15
+ var ITEM_LINK_CLASS_NAME = 'js-auto-play-carousel-item-link';
16
+ exports.HeroCarousel = react_1.default.memo(function HeroCarousel(_a) {
17
+ var carouselList = _a.carouselList;
18
+ if (carouselList.length === 0) {
19
+ return null;
20
+ }
21
+ var _b = useAutoPlayCarousel_1.useAutoPlayCarousel({
22
+ items: carouselList,
23
+ itemLinkClassName: ITEM_LINK_CLASS_NAME,
24
+ }), handleSlideToPrev = _b.handleSlideToPrev, handleSlideToNext = _b.handleSlideToNext, handleMouseEnter = _b.handleMouseEnter, handleMouseDown = _b.handleMouseDown, handleMouseLeave = _b.handleMouseLeave, handleTouchStart = _b.handleTouchStart, handleTransitionEnd = _b.handleTransitionEnd, isAutoPlaying = _b.isAutoPlaying, isLinkClicked = _b.isLinkClicked, itemsToRender = _b.itemsToRender, listRef = _b.listRef, listStyles = _b.listStyles, toggleAutoPlay = _b.toggleAutoPlay, handleFocus = _b.handleFocus, handleBlur = _b.handleBlur;
25
+ return (react_1.default.createElement("div", null,
26
+ react_1.default.createElement("div", { className: BLOCK_NAME + "-container", onBlur: handleBlur, onFocus: handleFocus, onMouseDown: handleMouseDown, onMouseEnter: handleMouseEnter, onMouseLeave: handleMouseLeave, onTouchStart: handleTouchStart, onTransitionEnd: handleTransitionEnd },
27
+ react_1.default.createElement("ul", { "aria-roledescription": "\u30AB\u30EB\u30FC\u30BB\u30EB", className: BLOCK_NAME + "-list", ref: listRef, role: "group", style: listStyles }, itemsToRender.map(function (item, index) { return (react_1.default.createElement(HeroCarouselItem_1.default, { carouselItem: item, isLinkClicked: isLinkClicked, itemLinkClassName: ITEM_LINK_CLASS_NAME, key: "hero-carousel-" + index })); }))),
28
+ react_1.default.createElement("div", { className: BLOCK_NAME + "-controls" },
29
+ react_1.default.createElement("button", { "aria-label": "1\u3064\u524D\u306E\u30A2\u30A4\u30C6\u30E0\u306B\u79FB\u52D5", className: BLOCK_NAME + "-control " + BLOCK_NAME + "-control--prev", type: "button", onClick: handleSlideToPrev },
30
+ react_1.default.createElement(ChevronLeftBold_1.default, { "aria-hidden": true })),
31
+ react_1.default.createElement("button", { "aria-label": isAutoPlaying ? 'スライドを停止' : 'スライドを再生', className: BLOCK_NAME + "-control", type: "button", onClick: toggleAutoPlay }, isAutoPlaying ? (react_1.default.createElement(Pause_1.default, { "aria-hidden": true })) : (react_1.default.createElement(PlayFill_1.default, { "aria-hidden": true }))),
32
+ react_1.default.createElement("button", { "aria-label": "1\u3064\u5F8C\u308D\u306E\u30A2\u30A4\u30C6\u30E0\u306B\u79FB\u52D5", className: BLOCK_NAME + "-control " + BLOCK_NAME + "-control--next", type: "button", onClick: handleSlideToNext },
33
+ react_1.default.createElement(ChevronRightBold_1.default, { "aria-hidden": true })))));
34
+ });
35
+ //# sourceMappingURL=HeroCarousel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeroCarousel.js","sourceRoot":"","sources":["../../src/HeroCarousel/HeroCarousel.tsx"],"names":[],"mappings":";;;;;;AAAA,gDAAkC;AAClC,4EAAsD;AACtD,8EAAwD;AACxD,wDAAkC;AAClC,8DAAwC;AAExC,wEAAkD;AAClD,mEAAkE;AAMlE,IAAM,UAAU,GAAG,mBAAmB,CAAC;AACvC,IAAM,oBAAoB,GAAG,iCAAiC,CAAC;AAElD,QAAA,YAAY,GAAc,eAAK,CAAC,IAAI,CAAC,SAAS,YAAY,CAAC,EAEvE;QADC,YAAY,kBAAA;IAEZ,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC7B,OAAO,IAAI,CAAC;KACb;IAEK,IAAA,KAgBF,yCAAmB,CAAC;QACtB,KAAK,EAAE,YAAY;QACnB,iBAAiB,EAAE,oBAAoB;KACxC,CAAC,EAlBA,iBAAiB,uBAAA,EACjB,iBAAiB,uBAAA,EACjB,gBAAgB,sBAAA,EAChB,eAAe,qBAAA,EACf,gBAAgB,sBAAA,EAChB,gBAAgB,sBAAA,EAChB,mBAAmB,yBAAA,EACnB,aAAa,mBAAA,EACb,aAAa,mBAAA,EACb,aAAa,mBAAA,EACb,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,cAAc,oBAAA,EACd,WAAW,iBAAA,EACX,UAAU,gBAIV,CAAC;IAEH,OAAO,CACL;QACE,uCACE,SAAS,EAAK,UAAU,eAAY,EACpC,MAAM,EAAE,UAAU,EAClB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,eAAe,EAC5B,YAAY,EAAE,gBAAgB,EAC9B,YAAY,EAAE,gBAAgB,EAC9B,YAAY,EAAE,gBAAgB,EAC9B,eAAe,EAAE,mBAAmB;YAEpC,8DACuB,gCAAO,EAC5B,SAAS,EAAK,UAAU,UAAO,EAC/B,GAAG,EAAE,OAAO,EACZ,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,UAAU,IAEhB,aAAa,CAAC,GAAG,CAAC,UAAC,IAAkB,EAAE,KAAa,IAAK,OAAA,CACxD,8BAAC,0BAAgB,IACf,YAAY,EAAE,IAAI,EAClB,aAAa,EAAE,aAAa,EAC5B,iBAAiB,EAAE,oBAAoB,EACvC,GAAG,EAAE,mBAAiB,KAAO,GAC7B,CACH,EAPyD,CAOzD,CAAC,CACC,CACD;QAEN,uCAAK,SAAS,EAAK,UAAU,cAAW;YACtC,wDACa,+DAAa,EACxB,SAAS,EAAK,UAAU,iBAAY,UAAU,mBAAgB,EAC9D,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,iBAAiB;gBAE1B,8BAAC,yBAAe,mBAAc,IAAI,GAAI,CAC/B;YACT,wDACc,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EACjD,SAAS,EAAK,UAAU,aAAU,EAClC,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,cAAc,IAEtB,aAAa,CAAC,CAAC,CAAC,CACf,8BAAC,eAAK,mBAAc,IAAI,GAAI,CAC7B,CAAC,CAAC,CAAC,CACF,8BAAC,kBAAQ,mBAAc,IAAI,GAAI,CAChC,CACM;YACT,wDACa,qEAAc,EACzB,SAAS,EAAK,UAAU,iBAAY,UAAU,mBAAgB,EAC9D,IAAI,EAAC,QAAQ,EACb,OAAO,EAAE,iBAAiB;gBAE1B,8BAAC,0BAAgB,mBAAc,IAAI,GAAI,CAChC,CACL,CACF,CACP,CAAC;AACJ,CAAC,CAAC,CAAC"}
@@ -0,0 +1 @@
1
+ :root{--HeroCarouselItem-onFocus-boxShadow:0 0 0 1px var(--color-surface-primary),0 0 0 3px var(--color-focus-clarity)}.spui-HeroCarouselItem-listItem{list-style:none;padding:0 .44em;width:100%}.spui-HeroCarouselItem-link{border:1px solid var(--color-border-low-emphasis);border-radius:12px;box-sizing:border-box;display:flex;flex-direction:column;height:12em;text-decoration:none}.spui-HeroCarouselItem-link:focus{box-shadow:var(--HeroCarouselItem-onFocus-boxShadow);outline:none}.spui-HeroCarouselItem-link:focus:not(:focus-visible){box-shadow:none}.spui-HeroCarouselItem-imageBlock{align-items:center;border-bottom:1px solid var(--color-border-low-emphasis);border-radius:12px 12px 0 0;display:flex;height:9.5em;justify-content:center;overflow:hidden}.spui-HeroCarouselItem-image{height:100%}.spui-HeroCarouselItem-titleContainer{align-items:center;box-sizing:border-box;display:flex;height:2.89em;justify-content:center;padding:0 .5em}.spui-HeroCarouselItem-title{color:var(--color-text-high-emphasis);font-size:.9375em;font-weight:700;margin:0;overflow:hidden;text-align:center;text-overflow:ellipsis;white-space:nowrap}@media screen and (min-width:768px){.spui-HeroCarouselItem-listItem{padding:0 .75em}.spui-HeroCarouselItem-link{height:13.8em}.spui-HeroCarouselItem-titleContainer{height:3.3em}.spui-HeroCarouselItem-title{font-size:1em}.spui-HeroCarouselItem-imageBlock{height:10.9em}}
@@ -0,0 +1,15 @@
1
+ import { FC } from 'react';
2
+ import './HeroCarouselItem.css';
3
+ export declare type CarouselItem = {
4
+ imageUrl: string;
5
+ link: string;
6
+ title: string;
7
+ };
8
+ declare type Props = {
9
+ carouselItem: CarouselItem;
10
+ isLinkClicked: boolean;
11
+ itemLinkClassName: string;
12
+ };
13
+ export declare const HeroCarouselItem: FC<Props>;
14
+ export default HeroCarouselItem;
15
+ //# sourceMappingURL=HeroCarouselItem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeroCarouselItem.d.ts","sourceRoot":"","sources":["../../src/HeroCarousel/HeroCarouselItem.tsx"],"names":[],"mappings":"AAAA,OAAc,EAAe,EAAE,EAAE,MAAM,OAAO,CAAC;AAC/C,OAAO,wBAAwB,CAAC;AAEhC,oBAAY,YAAY,GAAG;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF,aAAK,KAAK,GAAG;IACX,YAAY,EAAE,YAAY,CAAC;IAC3B,aAAa,EAAE,OAAO,CAAC;IACvB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAIF,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,KAAK,CA0CtC,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
@@ -0,0 +1,47 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
5
+ }) : (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ o[k2] = m[k];
8
+ }));
9
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
10
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
11
+ }) : function(o, v) {
12
+ o["default"] = v;
13
+ });
14
+ var __importStar = (this && this.__importStar) || function (mod) {
15
+ if (mod && mod.__esModule) return mod;
16
+ var result = {};
17
+ if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
18
+ __setModuleDefault(result, mod);
19
+ return result;
20
+ };
21
+ Object.defineProperty(exports, "__esModule", { value: true });
22
+ exports.HeroCarouselItem = void 0;
23
+ var react_1 = __importStar(require("react"));
24
+ require("./HeroCarouselItem.css");
25
+ var BLOCK_NAME = 'spui-HeroCarouselItem';
26
+ exports.HeroCarouselItem = react_1.default.memo(function HeroCarouselItem(_a) {
27
+ var carouselItem = _a.carouselItem, isLinkClicked = _a.isLinkClicked, itemLinkClassName = _a.itemLinkClassName;
28
+ var handleLinkClick = react_1.useCallback(function (e) {
29
+ if (!isLinkClicked) {
30
+ e.preventDefault();
31
+ }
32
+ }, [isLinkClicked]);
33
+ return (react_1.default.createElement("li", { className: BLOCK_NAME + "-listItem" },
34
+ react_1.default.createElement("a", { className: itemLinkClassName + " " + BLOCK_NAME + "-link", href: carouselItem.link, onClick: handleLinkClick },
35
+ react_1.default.createElement("span", { className: BLOCK_NAME + "-imageBlock" },
36
+ react_1.default.createElement("img", { alt: "", className: BLOCK_NAME + "-image", src: carouselItem.imageUrl })),
37
+ react_1.default.createElement("div", { className: BLOCK_NAME + "-titleContainer" },
38
+ react_1.default.createElement("p", { className: BLOCK_NAME + "-title" }, carouselItem.title)))));
39
+ }, function (prevProps, nextProps) {
40
+ return prevProps.isLinkClicked === nextProps.isLinkClicked &&
41
+ prevProps.itemLinkClassName === nextProps.itemLinkClassName &&
42
+ prevProps.carouselItem.title === nextProps.carouselItem.title &&
43
+ prevProps.carouselItem.link === nextProps.carouselItem.link &&
44
+ prevProps.carouselItem.imageUrl === nextProps.carouselItem.imageUrl;
45
+ });
46
+ exports.default = exports.HeroCarouselItem;
47
+ //# sourceMappingURL=HeroCarouselItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"HeroCarouselItem.js","sourceRoot":"","sources":["../../src/HeroCarousel/HeroCarouselItem.tsx"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,6CAA+C;AAC/C,kCAAgC;AAchC,IAAM,UAAU,GAAG,uBAAuB,CAAC;AAE9B,QAAA,gBAAgB,GAAc,eAAK,CAAC,IAAI,CACnD,SAAS,gBAAgB,CAAC,EAIzB;QAHC,YAAY,kBAAA,EACZ,aAAa,mBAAA,EACb,iBAAiB,uBAAA;IAEjB,IAAM,eAAe,GAAG,mBAAW,CACjC,UAAC,CAAyC;QACxC,IAAI,CAAC,aAAa,EAAE;YAClB,CAAC,CAAC,cAAc,EAAE,CAAC;SACpB;IACH,CAAC,EACD,CAAC,aAAa,CAAC,CAChB,CAAC;IAEF,OAAO,CACL,sCAAI,SAAS,EAAK,UAAU,cAAW;QACrC,qCACE,SAAS,EAAK,iBAAiB,SAAI,UAAU,UAAO,EACpD,IAAI,EAAE,YAAY,CAAC,IAAI,EACvB,OAAO,EAAE,eAAe;YAExB,wCAAM,SAAS,EAAK,UAAU,gBAAa;gBACzC,uCACE,GAAG,EAAC,EAAE,EACN,SAAS,EAAK,UAAU,WAAQ,EAChC,GAAG,EAAE,YAAY,CAAC,QAAQ,GAC1B,CACG;YACP,uCAAK,SAAS,EAAK,UAAU,oBAAiB;gBAC5C,qCAAG,SAAS,EAAK,UAAU,WAAQ,IAAG,YAAY,CAAC,KAAK,CAAK,CACzD,CACJ,CACD,CACN,CAAC;AACJ,CAAC,EACD,UAAC,SAAS,EAAE,SAAS;IACnB,OAAA,SAAS,CAAC,aAAa,KAAK,SAAS,CAAC,aAAa;QACnD,SAAS,CAAC,iBAAiB,KAAK,SAAS,CAAC,iBAAiB;QAC3D,SAAS,CAAC,YAAY,CAAC,KAAK,KAAK,SAAS,CAAC,YAAY,CAAC,KAAK;QAC7D,SAAS,CAAC,YAAY,CAAC,IAAI,KAAK,SAAS,CAAC,YAAY,CAAC,IAAI;QAC3D,SAAS,CAAC,YAAY,CAAC,QAAQ,KAAK,SAAS,CAAC,YAAY,CAAC,QAAQ;AAJnE,CAImE,CACtE,CAAC;AAEF,kBAAe,wBAAgB,CAAC"}
@@ -0,0 +1,27 @@
1
+ /// <reference types="react" />
2
+ declare type Payload<Item> = {
3
+ items: Item[];
4
+ itemLinkClassName: string;
5
+ };
6
+ export declare function useAutoPlayCarousel<Item>({ items, itemLinkClassName, }: Payload<Item>): {
7
+ handleSlideToPrev: () => void;
8
+ handleSlideToNext: () => void;
9
+ handleMouseEnter: () => void;
10
+ handleMouseDown: (e: React.MouseEvent) => void;
11
+ handleMouseLeave: () => void;
12
+ handleTouchStart: (e: React.TouchEvent) => void;
13
+ handleTransitionEnd: () => void;
14
+ isAutoPlaying: boolean;
15
+ isLinkClicked: boolean;
16
+ itemsToRender: Item[];
17
+ listRef: import("react").RefObject<HTMLUListElement>;
18
+ listStyles: {
19
+ transition: string;
20
+ transform: string;
21
+ };
22
+ toggleAutoPlay: () => void;
23
+ handleFocus: (e: React.FocusEvent<HTMLDivElement>) => void;
24
+ handleBlur: () => void;
25
+ };
26
+ export {};
27
+ //# sourceMappingURL=useAutoPlayCarousel.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAutoPlayCarousel.d.ts","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useAutoPlayCarousel.ts"],"names":[],"mappings":";AAOA,aAAK,OAAO,CAAC,IAAI,IAAI;IACnB,KAAK,EAAE,IAAI,EAAE,CAAC;IACd,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAKF,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,EACxC,KAAK,EACL,iBAAiB,GAClB,EAAE,OAAO,CAAC,IAAI,CAAC;;;;yBAsFc,gBAAgB;;0BA2Bf,gBAAgB;;;;;;;;;;;qBA4BrB,gBAAgB,CAAC,cAAc,CAAC;;EA0DzD"}
@@ -0,0 +1,168 @@
1
+ "use strict";
2
+ var __spreadArrays = (this && this.__spreadArrays) || function () {
3
+ for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;
4
+ for (var r = Array(s), k = 0, i = 0; i < il; i++)
5
+ for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)
6
+ r[k] = a[j];
7
+ return r;
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.useAutoPlayCarousel = void 0;
11
+ var react_1 = require("react");
12
+ var useAutoSlide_1 = require("./useAutoSlide");
13
+ var useCarouselFocus_1 = require("./useCarouselFocus");
14
+ var useSliderMoveEvent_1 = require("./useSliderMoveEvent");
15
+ var useSliderTransition_1 = require("./useSliderTransition");
16
+ var useValueRef_1 = require("./useValueRef");
17
+ var COPY_COUNT = 5;
18
+ var SWIPE_THRESHOLD_X = 20;
19
+ function useAutoPlayCarousel(_a) {
20
+ var items = _a.items, itemLinkClassName = _a.itemLinkClassName;
21
+ var _b = useSliderMoveEvent_1.useSliderMoveEvent(), diffXRef = _b.diffXRef, diffYRef = _b.diffYRef, setDiffX = _b.setDiffX, setDiffY = _b.setDiffY, setStartX = _b.setStartX, setStartY = _b.setStartY;
22
+ var _c = react_1.useState(0), focusOffset = _c[0], setFocusOffset = _c[1];
23
+ var _d = react_1.useState(false), isHovering = _d[0], setIsHovering = _d[1];
24
+ var _e = react_1.useState(false), isLinkClicked = _e[0], setIsLinkClicked = _e[1];
25
+ var isHoveringRef = useValueRef_1.useValueRef(isHovering);
26
+ var slideToNextRef = useValueRef_1.useValueRef(function () { return slideToNext(); });
27
+ var itemCount = react_1.useMemo(function () { return items.length; }, [items]);
28
+ var getIsCopiedItem = react_1.useCallback(function (index) {
29
+ return index < COPY_COUNT || index >= itemCount + COPY_COUNT;
30
+ }, [itemCount]);
31
+ var _f = useAutoSlide_1.useAutoSlide({
32
+ onTimeOut: slideToNextRef.current,
33
+ }), isAutoPlaying = _f.isAutoPlaying, setIsAutoPlaying = _f.setIsAutoPlaying, resetAutoSlide = _f.resetAutoSlide, resetTimeOut = _f.resetTimeOut, toggleAutoPlay = _f.toggleAutoPlay;
34
+ var _g = useCarouselFocus_1.useCarouselFocus({
35
+ getIsCopiedItem: getIsCopiedItem,
36
+ itemLinkClassName: itemLinkClassName,
37
+ }), linkRefs = _g.linkRefs, listRef = _g.listRef;
38
+ var isAutoPlayingRef = useValueRef_1.useValueRef(isAutoPlaying);
39
+ var _h = useSliderTransition_1.useSliderTransition({
40
+ copyCount: COPY_COUNT,
41
+ itemCount: itemCount,
42
+ isAutoPlaying: isAutoPlaying,
43
+ linkRefs: linkRefs,
44
+ }), currentIndexRef = _h.currentIndexRef, handleTransitionEnd = _h.handleTransitionEnd, listStyles = _h.listStyles, setCurrentIndex = _h.setCurrentIndex, setDisableAutoFocus = _h.setDisableAutoFocus, setDisableTransition = _h.setDisableTransition;
45
+ var itemsToRender = react_1.useMemo(
46
+ // generate copy contents on both ends to make carousel look like looping
47
+ function () { return __spreadArrays(items.slice(-COPY_COUNT), items, items.slice(0, COPY_COUNT)); }, [items]);
48
+ var slideToNext = function (ignoreHover) {
49
+ if (ignoreHover === void 0) { ignoreHover = false; }
50
+ var shouldSlideToNext = ((!isHoveringRef.current && isAutoPlayingRef.current) || ignoreHover) &&
51
+ currentIndexRef.current <= itemCount;
52
+ if (shouldSlideToNext) {
53
+ setDisableTransition(false);
54
+ setCurrentIndex(currentIndexRef.current + 1);
55
+ }
56
+ resetAutoSlide();
57
+ };
58
+ var slideToPrev = function () {
59
+ if (currentIndexRef.current >= 0) {
60
+ setDisableTransition(false);
61
+ setCurrentIndex(currentIndexRef.current - 1);
62
+ }
63
+ resetAutoSlide();
64
+ };
65
+ var handleMouseEnter = function () { return setIsHovering(true); };
66
+ var handleMouseLeave = function () {
67
+ setIsHovering(false);
68
+ resetAutoSlide();
69
+ };
70
+ var handleMouseDown = function (e) {
71
+ resetTimeOut();
72
+ setStartX(e.clientX);
73
+ setStartY(e.clientY);
74
+ };
75
+ var onMouseUp = function () {
76
+ if (diffXRef.current > SWIPE_THRESHOLD_X) {
77
+ setIsLinkClicked(false);
78
+ setIsAutoPlaying(false);
79
+ slideToPrev();
80
+ }
81
+ if (diffXRef.current < -SWIPE_THRESHOLD_X) {
82
+ setIsLinkClicked(false);
83
+ setIsAutoPlaying(false);
84
+ slideToNext(true);
85
+ }
86
+ if (diffXRef.current === 0 && diffYRef.current === 0) {
87
+ setIsLinkClicked(true);
88
+ }
89
+ setStartX(null);
90
+ setStartY(null);
91
+ setDiffX(0);
92
+ setDiffY(0);
93
+ };
94
+ var handleTouchStart = function (e) {
95
+ if (!e.touches.length)
96
+ return;
97
+ var touch = e.touches[0];
98
+ resetTimeOut();
99
+ handleMouseEnter();
100
+ setStartX(touch.clientX);
101
+ setStartY(touch.clientY);
102
+ };
103
+ var onTouchEnd = function () {
104
+ setIsHovering(false);
105
+ onMouseUp();
106
+ };
107
+ var handleSlideToPrev = function () {
108
+ resetTimeOut();
109
+ setIsAutoPlaying(false);
110
+ slideToPrev();
111
+ };
112
+ var handleSlideToNext = function () {
113
+ resetTimeOut();
114
+ setIsAutoPlaying(false);
115
+ slideToNext(true);
116
+ };
117
+ var handleFocus = function (e) {
118
+ setIsAutoPlaying(false);
119
+ var newFocusOffset = e.target.offsetLeft;
120
+ setFocusOffset(newFocusOffset);
121
+ if (focusOffset === 0) {
122
+ return;
123
+ }
124
+ setDisableAutoFocus(true);
125
+ if (isHovering && diffXRef.current === 0 && diffYRef.current === 0) {
126
+ setIsLinkClicked(true);
127
+ return;
128
+ }
129
+ if (focusOffset > newFocusOffset) {
130
+ setDisableTransition(false);
131
+ setCurrentIndex(currentIndexRef.current - 1);
132
+ }
133
+ if (focusOffset < newFocusOffset) {
134
+ setDisableTransition(false);
135
+ setCurrentIndex(currentIndexRef.current + 1);
136
+ }
137
+ };
138
+ var handleBlur = function () {
139
+ setIsAutoPlaying(true);
140
+ };
141
+ react_1.useEffect(function () {
142
+ document.body.addEventListener('mouseup', onMouseUp);
143
+ document.body.addEventListener('touchend', onTouchEnd);
144
+ return function () {
145
+ document.body.removeEventListener('mouseup', onMouseUp);
146
+ document.body.removeEventListener('touchend', onTouchEnd);
147
+ };
148
+ }, []);
149
+ return {
150
+ handleSlideToPrev: handleSlideToPrev,
151
+ handleSlideToNext: handleSlideToNext,
152
+ handleMouseEnter: handleMouseEnter,
153
+ handleMouseDown: handleMouseDown,
154
+ handleMouseLeave: handleMouseLeave,
155
+ handleTouchStart: handleTouchStart,
156
+ handleTransitionEnd: handleTransitionEnd,
157
+ isAutoPlaying: isAutoPlaying,
158
+ isLinkClicked: isLinkClicked,
159
+ itemsToRender: itemsToRender,
160
+ listRef: listRef,
161
+ listStyles: listStyles,
162
+ toggleAutoPlay: toggleAutoPlay,
163
+ handleFocus: handleFocus,
164
+ handleBlur: handleBlur,
165
+ };
166
+ }
167
+ exports.useAutoPlayCarousel = useAutoPlayCarousel;
168
+ //# sourceMappingURL=useAutoPlayCarousel.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAutoPlayCarousel.js","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useAutoPlayCarousel.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,+BAAkE;AAClE,+CAA8C;AAC9C,uDAAsD;AACtD,2DAA0D;AAC1D,6DAA4D;AAC5D,6CAA4C;AAO5C,IAAM,UAAU,GAAG,CAAC,CAAC;AACrB,IAAM,iBAAiB,GAAG,EAAE,CAAC;AAE7B,SAAgB,mBAAmB,CAAO,EAG1B;QAFd,KAAK,WAAA,EACL,iBAAiB,uBAAA;IAEX,IAAA,KAOF,uCAAkB,EAAE,EANtB,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,SAAS,eACa,CAAC;IACnB,IAAA,KAAgC,gBAAQ,CAAC,CAAC,CAAC,EAA1C,WAAW,QAAA,EAAE,cAAc,QAAe,CAAC;IAC5C,IAAA,KAA8B,gBAAQ,CAAC,KAAK,CAAC,EAA5C,UAAU,QAAA,EAAE,aAAa,QAAmB,CAAC;IAC9C,IAAA,KAAoC,gBAAQ,CAAC,KAAK,CAAC,EAAlD,aAAa,QAAA,EAAE,gBAAgB,QAAmB,CAAC;IAC1D,IAAM,aAAa,GAAG,yBAAW,CAAC,UAAU,CAAC,CAAC;IAC9C,IAAM,cAAc,GAAG,yBAAW,CAAC,cAAM,OAAA,WAAW,EAAE,EAAb,CAAa,CAAC,CAAC;IACxD,IAAM,SAAS,GAAG,eAAO,CAAC,cAAM,OAAA,KAAK,CAAC,MAAM,EAAZ,CAAY,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,IAAM,eAAe,GAAG,mBAAW,CACjC,UAAC,KAAa;QACZ,OAAO,KAAK,GAAG,UAAU,IAAI,KAAK,IAAI,SAAS,GAAG,UAAU,CAAC;IAC/D,CAAC,EACD,CAAC,SAAS,CAAC,CACZ,CAAC;IACI,IAAA,KAMF,2BAAY,CAAC;QACf,SAAS,EAAE,cAAc,CAAC,OAAO;KAClC,CAAC,EAPA,aAAa,mBAAA,EACb,gBAAgB,sBAAA,EAChB,cAAc,oBAAA,EACd,YAAY,kBAAA,EACZ,cAAc,oBAGd,CAAC;IACG,IAAA,KAAwB,mCAAgB,CAAC;QAC7C,eAAe,iBAAA;QACf,iBAAiB,mBAAA;KAClB,CAAC,EAHM,QAAQ,cAAA,EAAE,OAAO,aAGvB,CAAC;IACH,IAAM,gBAAgB,GAAG,yBAAW,CAAC,aAAa,CAAC,CAAC;IAC9C,IAAA,KAOF,yCAAmB,CAAC;QACtB,SAAS,EAAE,UAAU;QACrB,SAAS,WAAA;QACT,aAAa,eAAA;QACb,QAAQ,UAAA;KACT,CAAC,EAXA,eAAe,qBAAA,EACf,mBAAmB,yBAAA,EACnB,UAAU,gBAAA,EACV,eAAe,qBAAA,EACf,mBAAmB,yBAAA,EACnB,oBAAoB,0BAMpB,CAAC;IAEH,IAAM,aAAa,GAAG,eAAO;IAC3B,yEAAyE;IACzE,cAAM,sBACD,KAAK,CAAC,KAAK,CAAC,CAAC,UAAU,CAAC,EACxB,KAAK,EACL,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,GAHzB,CAIL,EACD,CAAC,KAAK,CAAC,CACR,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,WAAmB;QAAnB,4BAAA,EAAA,mBAAmB;QACtC,IAAM,iBAAiB,GACrB,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,IAAI,gBAAgB,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC;YACrE,eAAe,CAAC,OAAO,IAAI,SAAS,CAAC;QAEvC,IAAI,iBAAiB,EAAE;YACrB,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5B,eAAe,CAAC,eAAe,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;SAC9C;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG;QAClB,IAAI,eAAe,CAAC,OAAO,IAAI,CAAC,EAAE;YAChC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5B,eAAe,CAAC,eAAe,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;SAC9C;QACD,cAAc,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG,cAAM,OAAA,aAAa,CAAC,IAAI,CAAC,EAAnB,CAAmB,CAAC;IAEnD,IAAM,gBAAgB,GAAG;QACvB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,cAAc,EAAE,CAAC;IACnB,CAAC,CAAC;IAEF,IAAM,eAAe,GAAG,UAAC,CAAmB;QAC1C,YAAY,EAAE,CAAC;QACf,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;QACrB,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC;IACvB,CAAC,CAAC;IAEF,IAAM,SAAS,GAAG;QAChB,IAAI,QAAQ,CAAC,OAAO,GAAG,iBAAiB,EAAE;YACxC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,WAAW,EAAE,CAAC;SACf;QACD,IAAI,QAAQ,CAAC,OAAO,GAAG,CAAC,iBAAiB,EAAE;YACzC,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,gBAAgB,CAAC,KAAK,CAAC,CAAC;YACxB,WAAW,CAAC,IAAI,CAAC,CAAC;SACnB;QACD,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE;YACpD,gBAAgB,CAAC,IAAI,CAAC,CAAC;SACxB;QAED,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,SAAS,CAAC,IAAI,CAAC,CAAC;QAChB,QAAQ,CAAC,CAAC,CAAC,CAAC;QACZ,QAAQ,CAAC,CAAC,CAAC,CAAC;IACd,CAAC,CAAC;IAEF,IAAM,gBAAgB,GAAG,UAAC,CAAmB;QAC3C,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM;YAAE,OAAO;QAE9B,IAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3B,YAAY,EAAE,CAAC;QACf,gBAAgB,EAAE,CAAC;QACnB,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACzB,SAAS,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC3B,CAAC,CAAC;IAEF,IAAM,UAAU,GAAG;QACjB,aAAa,CAAC,KAAK,CAAC,CAAC;QACrB,SAAS,EAAE,CAAC;IACd,CAAC,CAAC;IAEF,IAAM,iBAAiB,GAAG;QACxB,YAAY,EAAE,CAAC;QACf,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,WAAW,EAAE,CAAC;IAChB,CAAC,CAAC;IAEF,IAAM,iBAAiB,GAAG;QACxB,YAAY,EAAE,CAAC;QACf,gBAAgB,CAAC,KAAK,CAAC,CAAC;QACxB,WAAW,CAAC,IAAI,CAAC,CAAC;IACpB,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,CAAmC;QACtD,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAEhB,IAAY,cAAc,GAAK,CAAC,CAAC,MAAM,WAAb,CAAc;QAEhD,cAAc,CAAC,cAAc,CAAC,CAAC;QAE/B,IAAI,WAAW,KAAK,CAAC,EAAE;YACrB,OAAO;SACR;QAED,mBAAmB,CAAC,IAAI,CAAC,CAAC;QAE1B,IAAI,UAAU,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,IAAI,QAAQ,CAAC,OAAO,KAAK,CAAC,EAAE;YAClE,gBAAgB,CAAC,IAAI,CAAC,CAAC;YACvB,OAAO;SACR;QACD,IAAI,WAAW,GAAG,cAAc,EAAE;YAChC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5B,eAAe,CAAC,eAAe,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;SAC9C;QACD,IAAI,WAAW,GAAG,cAAc,EAAE;YAChC,oBAAoB,CAAC,KAAK,CAAC,CAAC;YAC5B,eAAe,CAAC,eAAe,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;SAC9C;IACH,CAAC,CAAC;IAEF,IAAM,UAAU,GAAG;QACjB,gBAAgB,CAAC,IAAI,CAAC,CAAC;IACzB,CAAC,CAAC;IAEF,iBAAS,CAAC;QACR,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAEvD,OAAO;YACL,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;YACxD,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,UAAU,EAAE,UAAU,CAAC,CAAC;QAC5D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,iBAAiB,mBAAA;QACjB,iBAAiB,mBAAA;QACjB,gBAAgB,kBAAA;QAChB,eAAe,iBAAA;QACf,gBAAgB,kBAAA;QAChB,gBAAgB,kBAAA;QAChB,mBAAmB,qBAAA;QACnB,aAAa,eAAA;QACb,aAAa,eAAA;QACb,aAAa,eAAA;QACb,OAAO,SAAA;QACP,UAAU,YAAA;QACV,cAAc,gBAAA;QACd,WAAW,aAAA;QACX,UAAU,YAAA;KACX,CAAC;AACJ,CAAC;AA1MD,kDA0MC"}
@@ -0,0 +1,13 @@
1
+ /// <reference types="react" />
2
+ declare type Payload = {
3
+ onTimeOut: () => void;
4
+ };
5
+ export declare function useAutoSlide({ onTimeOut }: Payload): {
6
+ isAutoPlaying: boolean;
7
+ setIsAutoPlaying: import("react").Dispatch<import("react").SetStateAction<boolean>>;
8
+ resetAutoSlide: () => void;
9
+ resetTimeOut: () => void;
10
+ toggleAutoPlay: () => void;
11
+ };
12
+ export {};
13
+ //# sourceMappingURL=useAutoSlide.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAutoSlide.d.ts","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useAutoSlide.ts"],"names":[],"mappings":";AAIA,aAAK,OAAO,GAAG;IACb,SAAS,EAAE,MAAM,IAAI,CAAC;CACvB,CAAC;AAEF,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,EAAE,OAAO;;;;;;EA8ClD"}
@@ -0,0 +1,46 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useAutoSlide = void 0;
4
+ var react_1 = require("react");
5
+ var AUTO_SLIDE_SPEED = 4000; // ms
6
+ function useAutoSlide(_a) {
7
+ var onTimeOut = _a.onTimeOut;
8
+ var _b = react_1.useState(true), isAutoPlaying = _b[0], setIsAutoPlaying = _b[1];
9
+ var _c = react_1.useState(null), timeoutId = _c[0], setTimeoutId = _c[1];
10
+ var resetTimeOut = react_1.useCallback(function () {
11
+ if (timeoutId) {
12
+ clearTimeout(timeoutId);
13
+ }
14
+ }, [timeoutId]);
15
+ var activateAutoSlide = function () {
16
+ resetTimeOut();
17
+ var newTimeoutId = setTimeout(function () {
18
+ onTimeOut();
19
+ }, AUTO_SLIDE_SPEED);
20
+ setTimeoutId(newTimeoutId);
21
+ };
22
+ var resetAutoSlide = function () {
23
+ if (isAutoPlaying) {
24
+ activateAutoSlide();
25
+ }
26
+ };
27
+ var toggleAutoPlay = function () {
28
+ resetTimeOut();
29
+ if (!isAutoPlaying) {
30
+ activateAutoSlide();
31
+ }
32
+ setIsAutoPlaying(function (prev) { return !prev; });
33
+ };
34
+ react_1.useEffect(function () {
35
+ activateAutoSlide();
36
+ }, []);
37
+ return {
38
+ isAutoPlaying: isAutoPlaying,
39
+ setIsAutoPlaying: setIsAutoPlaying,
40
+ resetAutoSlide: resetAutoSlide,
41
+ resetTimeOut: resetTimeOut,
42
+ toggleAutoPlay: toggleAutoPlay,
43
+ };
44
+ }
45
+ exports.useAutoSlide = useAutoSlide;
46
+ //# sourceMappingURL=useAutoSlide.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useAutoSlide.js","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useAutoSlide.ts"],"names":[],"mappings":";;;AAAA,+BAAyD;AAEzD,IAAM,gBAAgB,GAAG,IAAI,CAAC,CAAC,KAAK;AAMpC,SAAgB,YAAY,CAAC,EAAsB;QAApB,SAAS,eAAA;IAChC,IAAA,KAAoC,gBAAQ,CAAC,IAAI,CAAC,EAAjD,aAAa,QAAA,EAAE,gBAAgB,QAAkB,CAAC;IACnD,IAAA,KAA4B,gBAAQ,CAAwB,IAAI,CAAC,EAAhE,SAAS,QAAA,EAAE,YAAY,QAAyC,CAAC;IAExE,IAAM,YAAY,GAAG,mBAAW,CAAC;QAC/B,IAAI,SAAS,EAAE;YACb,YAAY,CAAC,SAAS,CAAC,CAAC;SACzB;IACH,CAAC,EAAE,CAAC,SAAS,CAAC,CAAC,CAAC;IAEhB,IAAM,iBAAiB,GAAG;QACxB,YAAY,EAAE,CAAC;QAEf,IAAM,YAAY,GAAG,UAAU,CAAC;YAC9B,SAAS,EAAE,CAAC;QACd,CAAC,EAAE,gBAAgB,CAAC,CAAC;QAErB,YAAY,CAAC,YAAY,CAAC,CAAC;IAC7B,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG;QACrB,IAAI,aAAa,EAAE;YACjB,iBAAiB,EAAE,CAAC;SACrB;IACH,CAAC,CAAC;IAEF,IAAM,cAAc,GAAG;QACrB,YAAY,EAAE,CAAC;QAEf,IAAI,CAAC,aAAa,EAAE;YAClB,iBAAiB,EAAE,CAAC;SACrB;QACD,gBAAgB,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,IAAI,EAAL,CAAK,CAAC,CAAC;IACpC,CAAC,CAAC;IAEF,iBAAS,CAAC;QACR,iBAAiB,EAAE,CAAC;IACtB,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,aAAa,eAAA;QACb,gBAAgB,kBAAA;QAChB,cAAc,gBAAA;QACd,YAAY,cAAA;QACZ,cAAc,gBAAA;KACf,CAAC;AACJ,CAAC;AA9CD,oCA8CC"}
@@ -0,0 +1,11 @@
1
+ /// <reference types="react" />
2
+ declare type Payload = {
3
+ getIsCopiedItem: (index: number) => boolean;
4
+ itemLinkClassName: string;
5
+ };
6
+ export declare function useCarouselFocus({ getIsCopiedItem, itemLinkClassName, }: Payload): {
7
+ linkRefs: import("react").MutableRefObject<HTMLLinkElement[]>;
8
+ listRef: import("react").RefObject<HTMLUListElement>;
9
+ };
10
+ export {};
11
+ //# sourceMappingURL=useCarouselFocus.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCarouselFocus.d.ts","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useCarouselFocus.ts"],"names":[],"mappings":";AAEA,aAAK,OAAO,GAAG;IACb,eAAe,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC;IAC5C,iBAAiB,EAAE,MAAM,CAAC;CAC3B,CAAC;AAEF,wBAAgB,gBAAgB,CAAC,EAC/B,eAAe,EACf,iBAAiB,GAClB,EAAE,OAAO;;;EA+BT"}
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useCarouselFocus = void 0;
4
+ var react_1 = require("react");
5
+ function useCarouselFocus(_a) {
6
+ var getIsCopiedItem = _a.getIsCopiedItem, itemLinkClassName = _a.itemLinkClassName;
7
+ var listRef = react_1.useRef(null);
8
+ var linkRefs = react_1.useRef([]);
9
+ react_1.useEffect(function () {
10
+ if (!listRef.current)
11
+ return;
12
+ var linkElements = listRef.current.querySelectorAll("a." + itemLinkClassName);
13
+ if (!linkElements)
14
+ return;
15
+ // NOTE: use NodeList forEach as IE polyfill
16
+ Array.prototype.forEach.call(linkElements, function (link, index) {
17
+ linkRefs.current.push(link);
18
+ link.setAttribute('tabindex', getIsCopiedItem(index) ? '-1' : '0');
19
+ link.setAttribute('aria-hidden', getIsCopiedItem(index) ? 'true' : 'false');
20
+ });
21
+ }, [getIsCopiedItem, itemLinkClassName]);
22
+ return {
23
+ linkRefs: linkRefs,
24
+ listRef: listRef,
25
+ };
26
+ }
27
+ exports.useCarouselFocus = useCarouselFocus;
28
+ //# sourceMappingURL=useCarouselFocus.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useCarouselFocus.js","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useCarouselFocus.ts"],"names":[],"mappings":";;;AAAA,+BAA0C;AAO1C,SAAgB,gBAAgB,CAAC,EAGvB;QAFR,eAAe,qBAAA,EACf,iBAAiB,uBAAA;IAEjB,IAAM,OAAO,GAAG,cAAM,CAAmB,IAAI,CAAC,CAAC;IAC/C,IAAM,QAAQ,GAAG,cAAM,CAAoB,EAAE,CAAC,CAAC;IAE/C,iBAAS,CAAC;QACR,IAAI,CAAC,OAAO,CAAC,OAAO;YAAE,OAAO;QAE7B,IAAM,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,gBAAgB,CACnD,OAAK,iBAAmB,CACzB,CAAC;QAEF,IAAI,CAAC,YAAY;YAAE,OAAO;QAE1B,4CAA4C;QAC5C,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAC1B,YAAY,EACZ,UAAC,IAAqB,EAAE,KAAK;YAC3B,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,YAAY,CAAC,UAAU,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;YACnE,IAAI,CAAC,YAAY,CACf,aAAa,EACb,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAC1C,CAAC;QACJ,CAAC,CACF,CAAC;IACJ,CAAC,EAAE,CAAC,eAAe,EAAE,iBAAiB,CAAC,CAAC,CAAC;IAEzC,OAAO;QACL,QAAQ,UAAA;QACR,OAAO,SAAA;KACR,CAAC;AACJ,CAAC;AAlCD,4CAkCC"}
@@ -0,0 +1,10 @@
1
+ /// <reference types="react" />
2
+ export declare function useSliderMoveEvent(): {
3
+ diffXRef: import("react").MutableRefObject<number>;
4
+ diffYRef: import("react").MutableRefObject<number>;
5
+ setDiffX: import("react").Dispatch<import("react").SetStateAction<number>>;
6
+ setDiffY: import("react").Dispatch<import("react").SetStateAction<number>>;
7
+ setStartX: import("react").Dispatch<import("react").SetStateAction<number | null>>;
8
+ setStartY: import("react").Dispatch<import("react").SetStateAction<number | null>>;
9
+ };
10
+ //# sourceMappingURL=useSliderMoveEvent.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSliderMoveEvent.d.ts","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useSliderMoveEvent.ts"],"names":[],"mappings":";AAGA,wBAAgB,kBAAkB;;;;;;;EAsDjC"}
@@ -0,0 +1,52 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.useSliderMoveEvent = void 0;
4
+ var react_1 = require("react");
5
+ var useValueRef_1 = require("./useValueRef");
6
+ function useSliderMoveEvent() {
7
+ var _a = react_1.useState(0), diffX = _a[0], setDiffX = _a[1];
8
+ var _b = react_1.useState(0), diffY = _b[0], setDiffY = _b[1];
9
+ var _c = react_1.useState(null), startX = _c[0], setStartX = _c[1];
10
+ var _d = react_1.useState(null), startY = _d[0], setStartY = _d[1];
11
+ var diffXRef = useValueRef_1.useValueRef(diffX);
12
+ var diffYRef = useValueRef_1.useValueRef(diffY);
13
+ var startXRef = useValueRef_1.useValueRef(startX);
14
+ var startYRef = useValueRef_1.useValueRef(startY);
15
+ var onMouseMove = function (e) {
16
+ if (startXRef.current === null || startYRef.current === null)
17
+ return;
18
+ e.preventDefault();
19
+ setDiffX(e.clientX - startXRef.current);
20
+ setDiffY(e.clientY - startYRef.current);
21
+ };
22
+ var onTouchMove = function (e) {
23
+ if (startXRef.current === null ||
24
+ startYRef.current === null ||
25
+ !e.touches.length) {
26
+ return;
27
+ }
28
+ var touch = e.touches[0];
29
+ setDiffX(touch.clientX - startXRef.current);
30
+ setDiffY(touch.clientY - startYRef.current);
31
+ };
32
+ react_1.useEffect(function () {
33
+ document.body.addEventListener('mousemove', onMouseMove);
34
+ document.body.addEventListener('touchmove', onTouchMove, {
35
+ passive: true,
36
+ });
37
+ return function () {
38
+ document.body.removeEventListener('mousemove', onMouseMove);
39
+ document.body.removeEventListener('touchmove', onTouchMove);
40
+ };
41
+ }, []);
42
+ return {
43
+ diffXRef: diffXRef,
44
+ diffYRef: diffYRef,
45
+ setDiffX: setDiffX,
46
+ setDiffY: setDiffY,
47
+ setStartX: setStartX,
48
+ setStartY: setStartY,
49
+ };
50
+ }
51
+ exports.useSliderMoveEvent = useSliderMoveEvent;
52
+ //# sourceMappingURL=useSliderMoveEvent.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useSliderMoveEvent.js","sourceRoot":"","sources":["../../../src/HeroCarousel/hooks/useSliderMoveEvent.ts"],"names":[],"mappings":";;;AAAA,+BAA4C;AAC5C,6CAA4C;AAE5C,SAAgB,kBAAkB;IAC1B,IAAA,KAAoB,gBAAQ,CAAC,CAAC,CAAC,EAA9B,KAAK,QAAA,EAAE,QAAQ,QAAe,CAAC;IAChC,IAAA,KAAoB,gBAAQ,CAAC,CAAC,CAAC,EAA9B,KAAK,QAAA,EAAE,QAAQ,QAAe,CAAC;IAChC,IAAA,KAAsB,gBAAQ,CAAgB,IAAI,CAAC,EAAlD,MAAM,QAAA,EAAE,SAAS,QAAiC,CAAC;IACpD,IAAA,KAAsB,gBAAQ,CAAgB,IAAI,CAAC,EAAlD,MAAM,QAAA,EAAE,SAAS,QAAiC,CAAC;IAC1D,IAAM,QAAQ,GAAG,yBAAW,CAAC,KAAK,CAAC,CAAC;IACpC,IAAM,QAAQ,GAAG,yBAAW,CAAC,KAAK,CAAC,CAAC;IACpC,IAAM,SAAS,GAAG,yBAAW,CAAC,MAAM,CAAC,CAAC;IACtC,IAAM,SAAS,GAAG,yBAAW,CAAC,MAAM,CAAC,CAAC;IAEtC,IAAM,WAAW,GAAG,UAAC,CAAa;QAChC,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI,IAAI,SAAS,CAAC,OAAO,KAAK,IAAI;YAAE,OAAO;QAErE,CAAC,CAAC,cAAc,EAAE,CAAC;QAEnB,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QACxC,QAAQ,CAAC,CAAC,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC;IAEF,IAAM,WAAW,GAAG,UAAC,CAAa;QAChC,IACE,SAAS,CAAC,OAAO,KAAK,IAAI;YAC1B,SAAS,CAAC,OAAO,KAAK,IAAI;YAC1B,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,EACjB;YACA,OAAO;SACR;QAED,IAAM,KAAK,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;QAE3B,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;QAC5C,QAAQ,CAAC,KAAK,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC,CAAC;IAC9C,CAAC,CAAC;IAEF,iBAAS,CAAC;QACR,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QACzD,QAAQ,CAAC,IAAI,CAAC,gBAAgB,CAAC,WAAW,EAAE,WAAW,EAAE;YACvD,OAAO,EAAE,IAAI;SACd,CAAC,CAAC;QAEH,OAAO;YACL,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;YAC5D,QAAQ,CAAC,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAC9D,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO;QACL,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,QAAQ,UAAA;QACR,SAAS,WAAA;QACT,SAAS,WAAA;KACV,CAAC;AACJ,CAAC;AAtDD,gDAsDC"}