@kadoui/react 1.0.0 → 1.1.2

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 (323) hide show
  1. package/README.md +1 -0
  2. package/dist/components/AccessNavigation/AccessNavigation.d.ts.map +1 -1
  3. package/dist/components/AccessNavigation/AccessNavigation.jsx +1 -1
  4. package/dist/components/Accordion/AccordionBody.d.ts +1 -1
  5. package/dist/components/Accordion/AccordionBody.d.ts.map +1 -1
  6. package/dist/components/Accordion/AccordionBody.jsx +3 -6
  7. package/dist/components/Accordion/AccordionToggle.d.ts +1 -1
  8. package/dist/components/Accordion/AccordionToggle.d.ts.map +1 -1
  9. package/dist/components/Accordion/AccordionToggle.jsx +3 -8
  10. package/dist/components/Affix/Affix.d.ts +1 -1
  11. package/dist/components/Affix/Affix.d.ts.map +1 -1
  12. package/dist/components/Affix/Affix.jsx +3 -6
  13. package/dist/components/Breadcrumbs/BreadcrumbsItem.d.ts +1 -1
  14. package/dist/components/Breadcrumbs/BreadcrumbsItem.d.ts.map +1 -1
  15. package/dist/components/Breadcrumbs/BreadcrumbsItem.jsx +2 -3
  16. package/dist/components/Breadcrumbs/BreadcrumbsRoot.d.ts +1 -1
  17. package/dist/components/Breadcrumbs/BreadcrumbsRoot.d.ts.map +1 -1
  18. package/dist/components/Breadcrumbs/BreadcrumbsRoot.jsx +2 -3
  19. package/dist/components/Carousel/Carousel.d.ts +4 -0
  20. package/dist/components/Carousel/Carousel.d.ts.map +1 -1
  21. package/dist/components/Carousel/Carousel.js +5 -1
  22. package/dist/components/Carousel/CarouselContainer.d.ts +1 -1
  23. package/dist/components/Carousel/CarouselContainer.d.ts.map +1 -1
  24. package/dist/components/Carousel/CarouselContainer.jsx +2 -3
  25. package/dist/components/Carousel/CarouselContext.d.ts +2 -0
  26. package/dist/components/Carousel/CarouselContext.d.ts.map +1 -1
  27. package/dist/components/Carousel/CarouselLeftFade.d.ts +5 -0
  28. package/dist/components/Carousel/CarouselLeftFade.d.ts.map +1 -0
  29. package/dist/components/Carousel/CarouselLeftFade.jsx +10 -0
  30. package/dist/components/Carousel/CarouselRightFade.d.ts +5 -0
  31. package/dist/components/Carousel/CarouselRightFade.d.ts.map +1 -0
  32. package/dist/components/Carousel/CarouselRightFade.jsx +10 -0
  33. package/dist/components/Carousel/CarouselRoot.d.ts +1 -1
  34. package/dist/components/Carousel/CarouselRoot.d.ts.map +1 -1
  35. package/dist/components/Carousel/CarouselRoot.jsx +3 -16
  36. package/dist/components/Clipboard/Clipboard.d.ts +3 -2
  37. package/dist/components/Clipboard/Clipboard.d.ts.map +1 -1
  38. package/dist/components/Clipboard/Clipboard.jsx +2 -5
  39. package/dist/components/ContextMenu/ContextMenuContent.d.ts.map +1 -1
  40. package/dist/components/ContextMenu/ContextMenuContent.jsx +3 -2
  41. package/dist/components/ContextMenu/ContextMenuRoot.d.ts.map +1 -1
  42. package/dist/components/ContextMenu/ContextMenuRoot.jsx +1 -1
  43. package/dist/components/Drawer/DrawerBody.d.ts +1 -1
  44. package/dist/components/Drawer/DrawerBody.d.ts.map +1 -1
  45. package/dist/components/Drawer/DrawerBody.jsx +3 -4
  46. package/dist/components/Drawer/DrawerPortal.d.ts +1 -1
  47. package/dist/components/Drawer/DrawerPortal.d.ts.map +1 -1
  48. package/dist/components/Drawer/DrawerPortal.jsx +2 -3
  49. package/dist/components/Drawer/DrawerRoot.jsx +1 -1
  50. package/dist/components/Dropdown/DropdownMenu.d.ts +1 -1
  51. package/dist/components/Dropdown/DropdownMenu.d.ts.map +1 -1
  52. package/dist/components/Dropdown/DropdownMenu.jsx +2 -3
  53. package/dist/components/Dropdown/DropdownRoot.d.ts +1 -1
  54. package/dist/components/Dropdown/DropdownRoot.d.ts.map +1 -1
  55. package/dist/components/Dropdown/DropdownRoot.jsx +4 -6
  56. package/dist/components/LoaderLink/LoaderLink.d.ts +6 -0
  57. package/dist/components/LoaderLink/LoaderLink.d.ts.map +1 -0
  58. package/dist/components/LoaderLink/LoaderLink.jsx +6 -0
  59. package/dist/components/Modal/Modal.d.ts +3 -3
  60. package/dist/components/Modal/Modal.js +3 -3
  61. package/dist/components/Modal/ModalBody.d.ts +3 -3
  62. package/dist/components/Modal/ModalBody.d.ts.map +1 -1
  63. package/dist/components/Modal/ModalBody.jsx +20 -5
  64. package/dist/components/Modal/ModalContent.d.ts +3 -3
  65. package/dist/components/Modal/ModalContent.d.ts.map +1 -1
  66. package/dist/components/Modal/ModalContent.jsx +2 -21
  67. package/dist/components/Modal/ModalHeader.d.ts +1 -1
  68. package/dist/components/Modal/ModalHeader.d.ts.map +1 -1
  69. package/dist/components/Modal/ModalHeader.jsx +2 -3
  70. package/dist/components/Modal/ModalPortal.d.ts +1 -1
  71. package/dist/components/Modal/ModalPortal.d.ts.map +1 -1
  72. package/dist/components/Modal/ModalPortal.jsx +2 -3
  73. package/dist/components/Modal/ModalRoot.d.ts.map +1 -1
  74. package/dist/components/Modal/ModalRoot.jsx +1 -1
  75. package/dist/components/Otp/OtpInputs.d.ts +1 -1
  76. package/dist/components/Otp/OtpInputs.d.ts.map +1 -1
  77. package/dist/components/Otp/OtpInputs.jsx +2 -3
  78. package/dist/components/Otp/OtpRoot.d.ts +1 -1
  79. package/dist/components/Otp/OtpRoot.d.ts.map +1 -1
  80. package/dist/components/Otp/OtpRoot.jsx +2 -3
  81. package/dist/components/Pagination/PaginationNextBtn.d.ts +1 -1
  82. package/dist/components/Pagination/PaginationNextBtn.d.ts.map +1 -1
  83. package/dist/components/Pagination/PaginationNextBtn.jsx +2 -5
  84. package/dist/components/Pagination/PaginationPrevBtn.d.ts +1 -1
  85. package/dist/components/Pagination/PaginationPrevBtn.d.ts.map +1 -1
  86. package/dist/components/Pagination/PaginationPrevBtn.jsx +2 -5
  87. package/dist/components/PasswordInput/PasswordInputToggle.d.ts +5 -3
  88. package/dist/components/PasswordInput/PasswordInputToggle.d.ts.map +1 -1
  89. package/dist/components/PasswordInput/PasswordInputToggle.jsx +2 -10
  90. package/dist/components/Progress/ProgressBar.d.ts +1 -1
  91. package/dist/components/Progress/ProgressBar.d.ts.map +1 -1
  92. package/dist/components/Progress/ProgressBar.jsx +2 -3
  93. package/dist/components/Progress/ProgressRoot.d.ts +1 -1
  94. package/dist/components/Progress/ProgressRoot.d.ts.map +1 -1
  95. package/dist/components/Progress/ProgressRoot.jsx +2 -3
  96. package/dist/components/Rating/Rating.d.ts +1 -1
  97. package/dist/components/Rating/RatingItems.d.ts +3 -3
  98. package/dist/components/Rating/RatingItems.d.ts.map +1 -1
  99. package/dist/components/Rating/RatingItems.jsx +3 -7
  100. package/dist/components/Rating/RatingRoot.d.ts +1 -1
  101. package/dist/components/Rating/RatingRoot.d.ts.map +1 -1
  102. package/dist/components/Rating/RatingRoot.jsx +2 -3
  103. package/dist/components/Sheet/Sheet.d.ts.map +1 -1
  104. package/dist/components/Sheet/SheetBody.d.ts +1 -1
  105. package/dist/components/Sheet/SheetBody.d.ts.map +1 -1
  106. package/dist/components/Sheet/SheetBody.jsx +5 -6
  107. package/dist/components/Sheet/SheetContent.d.ts +1 -1
  108. package/dist/components/Sheet/SheetContent.d.ts.map +1 -1
  109. package/dist/components/Sheet/SheetContent.jsx +2 -3
  110. package/dist/components/Sheet/SheetContext.d.ts +1 -2
  111. package/dist/components/Sheet/SheetContext.d.ts.map +1 -1
  112. package/dist/components/Sheet/SheetHeader.d.ts +1 -1
  113. package/dist/components/Sheet/SheetHeader.d.ts.map +1 -1
  114. package/dist/components/Sheet/SheetHeader.jsx +5 -5
  115. package/dist/components/Sheet/SheetPortal.d.ts +1 -1
  116. package/dist/components/Sheet/SheetPortal.d.ts.map +1 -1
  117. package/dist/components/Sheet/SheetPortal.jsx +2 -3
  118. package/dist/components/Sheet/SheetRoot.d.ts.map +1 -1
  119. package/dist/components/Sheet/SheetRoot.jsx +6 -7
  120. package/dist/components/ShowMore/ShowMoreContent.d.ts +1 -1
  121. package/dist/components/ShowMore/ShowMoreContent.d.ts.map +1 -1
  122. package/dist/components/ShowMore/ShowMoreContent.jsx +6 -4
  123. package/dist/components/ShowMore/ShowMoreFade.d.ts +1 -1
  124. package/dist/components/ShowMore/ShowMoreFade.d.ts.map +1 -1
  125. package/dist/components/ShowMore/ShowMoreFade.jsx +2 -3
  126. package/dist/components/ShowMore/ShowMoreRoot.d.ts +1 -1
  127. package/dist/components/ShowMore/ShowMoreRoot.d.ts.map +1 -1
  128. package/dist/components/ShowMore/ShowMoreRoot.jsx +2 -3
  129. package/dist/components/ShowMore/ShowMoreTrigger.d.ts +1 -1
  130. package/dist/components/ShowMore/ShowMoreTrigger.d.ts.map +1 -1
  131. package/dist/components/ShowMore/ShowMoreTrigger.jsx +5 -3
  132. package/dist/components/Slide/Slide.d.ts +2 -2
  133. package/dist/components/Slide/Slide.d.ts.map +1 -1
  134. package/dist/components/Slide/Slide.js +2 -2
  135. package/dist/components/Slide/SlideBody.d.ts +4 -0
  136. package/dist/components/Slide/SlideBody.d.ts.map +1 -0
  137. package/dist/components/Slide/SlideBody.jsx +3 -0
  138. package/dist/components/Slide/SlideHeader.d.ts +1 -1
  139. package/dist/components/Slide/SlideHeader.d.ts.map +1 -1
  140. package/dist/components/Slide/SlideHeader.jsx +2 -3
  141. package/dist/components/Slide/SlidePortal.d.ts.map +1 -1
  142. package/dist/components/Slide/SlidePortal.jsx +2 -2
  143. package/dist/components/Slide/SlideRoot.d.ts +4 -2
  144. package/dist/components/Slide/SlideRoot.d.ts.map +1 -1
  145. package/dist/components/Slide/SlideRoot.jsx +12 -7
  146. package/dist/components/Spoiler/Spoiler.d.ts +4 -4
  147. package/dist/components/Spoiler/Spoiler.d.ts.map +1 -1
  148. package/dist/components/Spoiler/Spoiler.js +5 -0
  149. package/dist/components/Spoiler/SpoilerBlur.d.ts +4 -0
  150. package/dist/components/Spoiler/SpoilerBlur.d.ts.map +1 -0
  151. package/dist/components/Spoiler/SpoilerBlur.jsx +8 -0
  152. package/dist/components/Spoiler/SpoilerContext.d.ts +7 -0
  153. package/dist/components/Spoiler/SpoilerContext.d.ts.map +1 -0
  154. package/dist/components/Spoiler/SpoilerContext.js +2 -0
  155. package/dist/components/Spoiler/SpoilerRoot.d.ts +4 -0
  156. package/dist/components/Spoiler/SpoilerRoot.d.ts.map +1 -0
  157. package/dist/components/Spoiler/SpoilerRoot.jsx +10 -0
  158. package/dist/components/Steps/Steps.d.ts +6 -3
  159. package/dist/components/Steps/Steps.d.ts.map +1 -1
  160. package/dist/components/Steps/Steps.js +4 -2
  161. package/dist/components/Steps/StepsContext.d.ts.map +1 -1
  162. package/dist/components/Steps/StepsContext.js +2 -0
  163. package/dist/components/Steps/StepsControls.jsx +1 -1
  164. package/dist/components/Steps/StepsIndexBtn.d.ts +6 -0
  165. package/dist/components/Steps/StepsIndexBtn.d.ts.map +1 -0
  166. package/dist/components/Steps/StepsIndexBtn.jsx +10 -0
  167. package/dist/components/Steps/StepsNextBtn.d.ts +1 -1
  168. package/dist/components/Steps/StepsNextBtn.d.ts.map +1 -1
  169. package/dist/components/Steps/StepsNextBtn.jsx +2 -5
  170. package/dist/components/Steps/StepsPrevBtn.d.ts +1 -1
  171. package/dist/components/Steps/StepsPrevBtn.d.ts.map +1 -1
  172. package/dist/components/Steps/StepsPrevBtn.jsx +2 -5
  173. package/dist/components/Steps/StepsRender.d.ts +2 -0
  174. package/dist/components/Steps/StepsRender.d.ts.map +1 -0
  175. package/dist/components/Steps/StepsRender.jsx +7 -0
  176. package/dist/components/Tabs/TabsList.d.ts +1 -1
  177. package/dist/components/Tabs/TabsList.d.ts.map +1 -1
  178. package/dist/components/Tabs/TabsList.jsx +2 -3
  179. package/dist/components/Tabs/TabsPanel.d.ts +1 -1
  180. package/dist/components/Tabs/TabsPanel.d.ts.map +1 -1
  181. package/dist/components/Tabs/TabsPanel.jsx +2 -3
  182. package/dist/components/Toast/ToastBox.jsx +1 -1
  183. package/dist/index.d.ts +1 -4
  184. package/dist/index.d.ts.map +1 -1
  185. package/dist/index.js +1 -4
  186. package/dist/utils/browser.d.ts +3 -0
  187. package/dist/utils/browser.d.ts.map +1 -0
  188. package/dist/utils/browser.js +21 -0
  189. package/dist/utils/cn.d.ts +3 -0
  190. package/dist/utils/cn.d.ts.map +1 -0
  191. package/dist/utils/cn.js +3 -0
  192. package/dist/utils/form.d.ts +2 -0
  193. package/dist/utils/form.d.ts.map +1 -0
  194. package/dist/utils/form.js +8 -0
  195. package/dist/utils.d.ts +4 -0
  196. package/dist/utils.d.ts.map +1 -0
  197. package/dist/utils.js +3 -0
  198. package/package.json +6 -4
  199. package/dist/components/LinkLoader/LinkLoader.d.ts +0 -6
  200. package/dist/components/LinkLoader/LinkLoader.d.ts.map +0 -1
  201. package/dist/components/LinkLoader/LinkLoader.jsx +0 -8
  202. package/dist/components/Slide/SlideContent.d.ts +0 -4
  203. package/dist/components/Slide/SlideContent.d.ts.map +0 -1
  204. package/dist/components/Slide/SlideContent.jsx +0 -4
  205. package/dist/components/Spoiler/Spoiler.jsx +0 -11
  206. package/src/components/AccessNavigation/AccessNavigation.tsx +0 -46
  207. package/src/components/Accordion/Accordion.ts +0 -8
  208. package/src/components/Accordion/AccordionBody.tsx +0 -31
  209. package/src/components/Accordion/AccordionContext.ts +0 -8
  210. package/src/components/Accordion/AccordionRoot.tsx +0 -17
  211. package/src/components/Accordion/AccordionToggle.tsx +0 -29
  212. package/src/components/Affix/Affix.tsx +0 -59
  213. package/src/components/Breadcrumbs/Breadcrumbs.ts +0 -6
  214. package/src/components/Breadcrumbs/BreadcrumbsContext.ts +0 -7
  215. package/src/components/Breadcrumbs/BreadcrumbsItem.tsx +0 -24
  216. package/src/components/Breadcrumbs/BreadcrumbsRoot.tsx +0 -21
  217. package/src/components/Carousel/Carousel.ts +0 -6
  218. package/src/components/Carousel/CarouselContainer.tsx +0 -18
  219. package/src/components/Carousel/CarouselContext.ts +0 -7
  220. package/src/components/Carousel/CarouselRoot.tsx +0 -75
  221. package/src/components/ClientOnly/ClientOnly.tsx +0 -12
  222. package/src/components/Clipboard/Clipboard.tsx +0 -36
  223. package/src/components/ContextMenu/ContextMenu.ts +0 -6
  224. package/src/components/ContextMenu/ContextMenuContent.tsx +0 -51
  225. package/src/components/ContextMenu/ContextMenuContext.ts +0 -9
  226. package/src/components/ContextMenu/ContextMenuRoot.tsx +0 -79
  227. package/src/components/Drawer/Drawer.ts +0 -10
  228. package/src/components/Drawer/DrawerBody.tsx +0 -67
  229. package/src/components/Drawer/DrawerContext.ts +0 -8
  230. package/src/components/Drawer/DrawerPortal.tsx +0 -40
  231. package/src/components/Drawer/DrawerRoot.tsx +0 -45
  232. package/src/components/Drawer/DrawerToggle.tsx +0 -21
  233. package/src/components/Dropdown/Dropdown.ts +0 -8
  234. package/src/components/Dropdown/DropdownContext.ts +0 -10
  235. package/src/components/Dropdown/DropdownMenu.tsx +0 -34
  236. package/src/components/Dropdown/DropdownRoot.tsx +0 -90
  237. package/src/components/Dropdown/DropdownToggle.tsx +0 -23
  238. package/src/components/LinkLoader/LinkLoader.tsx +0 -16
  239. package/src/components/Modal/Modal.ts +0 -14
  240. package/src/components/Modal/ModalBody.tsx +0 -12
  241. package/src/components/Modal/ModalContent.tsx +0 -44
  242. package/src/components/Modal/ModalContext.ts +0 -8
  243. package/src/components/Modal/ModalHeader.tsx +0 -10
  244. package/src/components/Modal/ModalPortal.tsx +0 -40
  245. package/src/components/Modal/ModalRoot.tsx +0 -47
  246. package/src/components/Modal/ModalTrigger.tsx +0 -21
  247. package/src/components/Otp/Otp.ts +0 -8
  248. package/src/components/Otp/OtpContext.ts +0 -10
  249. package/src/components/Otp/OtpHiddenInput.tsx +0 -15
  250. package/src/components/Otp/OtpInputs.tsx +0 -86
  251. package/src/components/Otp/OtpRoot.tsx +0 -26
  252. package/src/components/Pagination/Pagination.ts +0 -15
  253. package/src/components/Pagination/PaginationContext.tsx +0 -10
  254. package/src/components/Pagination/PaginationCounts.tsx +0 -17
  255. package/src/components/Pagination/PaginationNextBtn.tsx +0 -27
  256. package/src/components/Pagination/PaginationPrevBtn.tsx +0 -27
  257. package/src/components/Pagination/PaginationSearchParamsRoot.tsx +0 -45
  258. package/src/components/Pagination/PaginationStateRoot.tsx +0 -23
  259. package/src/components/PasswordInput/PasswordInput.ts +0 -8
  260. package/src/components/PasswordInput/PasswordInputContext.tsx +0 -8
  261. package/src/components/PasswordInput/PasswordInputField.tsx +0 -15
  262. package/src/components/PasswordInput/PasswordInputRoot.tsx +0 -17
  263. package/src/components/PasswordInput/PasswordInputToggle.tsx +0 -52
  264. package/src/components/Portal/Portal.tsx +0 -17
  265. package/src/components/Progress/Progress.ts +0 -6
  266. package/src/components/Progress/ProgressBar.tsx +0 -29
  267. package/src/components/Progress/ProgressContext.ts +0 -8
  268. package/src/components/Progress/ProgressRoot.tsx +0 -22
  269. package/src/components/QrCode/QrCode.tsx +0 -22
  270. package/src/components/Rating/Rating.ts +0 -6
  271. package/src/components/Rating/RatingContext.ts +0 -8
  272. package/src/components/Rating/RatingItems.tsx +0 -50
  273. package/src/components/Rating/RatingRoot.tsx +0 -22
  274. package/src/components/Sheet/Sheet.tsx +0 -14
  275. package/src/components/Sheet/SheetBody.tsx +0 -49
  276. package/src/components/Sheet/SheetContent.tsx +0 -8
  277. package/src/components/Sheet/SheetContext.ts +0 -14
  278. package/src/components/Sheet/SheetHeader.tsx +0 -24
  279. package/src/components/Sheet/SheetPortal.tsx +0 -35
  280. package/src/components/Sheet/SheetRoot.tsx +0 -56
  281. package/src/components/Sheet/SheetToggle.tsx +0 -21
  282. package/src/components/ShowMore/ShowMore.ts +0 -10
  283. package/src/components/ShowMore/ShowMoreContent.tsx +0 -31
  284. package/src/components/ShowMore/ShowMoreContext.ts +0 -11
  285. package/src/components/ShowMore/ShowMoreFade.tsx +0 -18
  286. package/src/components/ShowMore/ShowMoreRoot.tsx +0 -37
  287. package/src/components/ShowMore/ShowMoreTrigger.tsx +0 -23
  288. package/src/components/Slide/Slide.ts +0 -12
  289. package/src/components/Slide/SlideContent.tsx +0 -8
  290. package/src/components/Slide/SlideContext.ts +0 -11
  291. package/src/components/Slide/SlideHeader.tsx +0 -10
  292. package/src/components/Slide/SlidePortal.tsx +0 -26
  293. package/src/components/Slide/SlideRoot.tsx +0 -39
  294. package/src/components/Slide/SlideToggle.tsx +0 -21
  295. package/src/components/Spoiler/Spoiler.tsx +0 -28
  296. package/src/components/Steps/Steps.ts +0 -15
  297. package/src/components/Steps/StepsContext.tsx +0 -16
  298. package/src/components/Steps/StepsControls.tsx +0 -56
  299. package/src/components/Steps/StepsNextBtn.tsx +0 -27
  300. package/src/components/Steps/StepsPrevBtn.tsx +0 -27
  301. package/src/components/Steps/StepsSearchParamsRoot.tsx +0 -45
  302. package/src/components/Steps/StepsStateRoot.tsx +0 -23
  303. package/src/components/Swap/Swap.ts +0 -8
  304. package/src/components/Swap/SwapContext.ts +0 -9
  305. package/src/components/Swap/SwapItem.tsx +0 -16
  306. package/src/components/Swap/SwapRoot.tsx +0 -29
  307. package/src/components/Swap/SwapTrigger.tsx +0 -31
  308. package/src/components/Tabs/Tabs.ts +0 -10
  309. package/src/components/Tabs/TabsContext.ts +0 -11
  310. package/src/components/Tabs/TabsList.tsx +0 -12
  311. package/src/components/Tabs/TabsPanel.tsx +0 -23
  312. package/src/components/Tabs/TabsRoot.tsx +0 -18
  313. package/src/components/Tabs/TabsTab.tsx +0 -23
  314. package/src/components/Toast/Toast.ts +0 -3
  315. package/src/components/Toast/ToastBox.tsx +0 -50
  316. package/src/components/Toast/ToastRoot.tsx +0 -71
  317. package/src/components/Toast/toastStore.ts +0 -22
  318. package/src/components/Toggle/Toggle.ts +0 -6
  319. package/src/components/Toggle/ToggleContext.ts +0 -9
  320. package/src/components/Toggle/ToggleRoot.tsx +0 -26
  321. package/src/components/Toggle/ToggleSwitch.tsx +0 -41
  322. package/src/index.ts +0 -28
  323. /package/dist/components/Sheet/{Sheet.jsx → Sheet.js} +0 -0
@@ -0,0 +1,2 @@
1
+ export declare function StepsRender(): import("react").ReactNode;
2
+ //# sourceMappingURL=StepsRender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"StepsRender.d.ts","sourceRoot":"","sources":["../../../src/components/Steps/StepsRender.tsx"],"names":[],"mappings":"AAMA,wBAAgB,WAAW,8BAI1B"}
@@ -0,0 +1,7 @@
1
+ "use client";
2
+ import { use } from "react";
3
+ import { StepsContext } from "./StepsContext";
4
+ export function StepsRender() {
5
+ const { step, steps } = use(StepsContext);
6
+ return steps.find((_, index) => index + 1 === step)?.component;
7
+ }
@@ -1,4 +1,4 @@
1
1
  import { HTMLAttributes } from "react";
2
2
  export type TabsListPropsT = HTMLAttributes<HTMLDivElement>;
3
- export declare function TabsList({ className, ...props }: TabsListPropsT): import("react").JSX.Element;
3
+ export declare function TabsList(p: TabsListPropsT): import("react").JSX.Element;
4
4
  //# sourceMappingURL=TabsList.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabsList.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/TabsList.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAE5D,wBAAgB,QAAQ,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,cAAc,+BAI/D"}
1
+ {"version":3,"file":"TabsList.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/TabsList.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,cAAc,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAE5D,wBAAgB,QAAQ,CAAC,CAAC,EAAE,cAAc,+BAEzC"}
@@ -1,5 +1,4 @@
1
1
  "use client";
2
- import { cn } from "kadoui-utils";
3
- export function TabsList({ className, ...props }) {
4
- return (<div className={cn("join-border", className)} {...props}/>);
2
+ export function TabsList(p) {
3
+ return <div {...p}/>;
5
4
  }
@@ -2,5 +2,5 @@ import { HTMLAttributes } from "react";
2
2
  export type TabsPanelPropsT = HTMLAttributes<HTMLDivElement> & {
3
3
  value: string;
4
4
  };
5
- export declare function TabsPanel({ value, className, ...props }: TabsPanelPropsT): import("react").JSX.Element | null;
5
+ export declare function TabsPanel({ value, ...p }: TabsPanelPropsT): import("react").JSX.Element | null;
6
6
  //# sourceMappingURL=TabsPanel.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"TabsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/TabsPanel.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAE,cAAc,EAAO,MAAM,OAAO,CAAC;AAI5C,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,KAAK,EAAE,MAAM,CAAC;CACf,CAAA;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,eAAe,sCAWxE"}
1
+ {"version":3,"file":"TabsPanel.d.ts","sourceRoot":"","sources":["../../../src/components/Tabs/TabsPanel.tsx"],"names":[],"mappings":"AAEA,OAAO,EAAE,cAAc,EAAO,MAAM,OAAO,CAAC;AAI5C,MAAM,MAAM,eAAe,GAAG,cAAc,CAAC,cAAc,CAAC,GAAG;IAC7D,KAAK,EAAE,MAAM,CAAC;CACf,CAAA;AAED,wBAAgB,SAAS,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,EAAE,EAAE,eAAe,sCAMzD"}
@@ -1,9 +1,8 @@
1
1
  "use client";
2
- import { cn } from "kadoui-utils";
3
2
  import { use } from "react";
4
3
  import { TabsContext } from "./TabsContext";
5
- export function TabsPanel({ value, className, ...props }) {
4
+ export function TabsPanel({ value, ...p }) {
6
5
  const { activeTab } = use(TabsContext);
7
6
  const isActive = activeTab === value;
8
- return isActive ? (<div className={cn("p-3 rounded-kado bg-foreground/10 mt-1.5", className)} {...props}/>) : null;
7
+ return isActive ? <div {...p}/> : null;
9
8
  }
@@ -1,4 +1,4 @@
1
- import { cn } from "kadoui-utils";
1
+ import { cn } from "../../utils";
2
2
  import { CheckIcon, CircleAlertIcon, TriangleAlertIcon, XIcon } from "lucide-react";
3
3
  export function ToastBox({ toast }) {
4
4
  let toastIcon = null;
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@ export * from "./components/Clipboard/Clipboard";
8
8
  export * from "./components/ContextMenu/ContextMenu";
9
9
  export * from "./components/Drawer/Drawer";
10
10
  export * from "./components/Dropdown/Dropdown";
11
- export * from "./components/LinkLoader/LinkLoader";
11
+ export * from "./components/LoaderLink/LoaderLink";
12
12
  export * from "./components/Modal/Modal";
13
13
  export * from "./components/Otp/Otp";
14
14
  export * from "./components/Pagination/Pagination";
@@ -19,11 +19,8 @@ export * from "./components/QrCode/QrCode";
19
19
  export * from "./components/Rating/Rating";
20
20
  export * from "./components/Sheet/Sheet";
21
21
  export * from "./components/ShowMore/ShowMore";
22
- export * from "./components/Slide/Slide";
23
22
  export * from "./components/Spoiler/Spoiler";
24
23
  export * from "./components/Steps/Steps";
25
24
  export * from "./components/Swap/Swap";
26
25
  export * from "./components/Tabs/Tabs";
27
- export * from "./components/Toast/Toast";
28
- export * from "./components/Toggle/Toggle";
29
26
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,0BAA0B,CAAC;AACzC,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC;AACvC,cAAc,0BAA0B,CAAC;AACzC,cAAc,4BAA4B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,gDAAgD,CAAC;AAC/D,cAAc,kCAAkC,CAAC;AACjD,cAAc,0BAA0B,CAAC;AACzC,cAAc,sCAAsC,CAAC;AACrD,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,kCAAkC,CAAC;AACjD,cAAc,sCAAsC,CAAC;AACrD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,oCAAoC,CAAC;AACnD,cAAc,0BAA0B,CAAC;AACzC,cAAc,sBAAsB,CAAC;AACrC,cAAc,oCAAoC,CAAC;AACnD,cAAc,0CAA0C,CAAC;AACzD,cAAc,4BAA4B,CAAC;AAC3C,cAAc,gCAAgC,CAAC;AAC/C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,0BAA0B,CAAC;AACzC,cAAc,gCAAgC,CAAC;AAC/C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,0BAA0B,CAAC;AACzC,cAAc,wBAAwB,CAAC;AACvC,cAAc,wBAAwB,CAAC"}
package/dist/index.js CHANGED
@@ -8,7 +8,7 @@ export * from "./components/Clipboard/Clipboard";
8
8
  export * from "./components/ContextMenu/ContextMenu";
9
9
  export * from "./components/Drawer/Drawer";
10
10
  export * from "./components/Dropdown/Dropdown";
11
- export * from "./components/LinkLoader/LinkLoader";
11
+ export * from "./components/LoaderLink/LoaderLink";
12
12
  export * from "./components/Modal/Modal";
13
13
  export * from "./components/Otp/Otp";
14
14
  export * from "./components/Pagination/Pagination";
@@ -19,10 +19,7 @@ export * from "./components/QrCode/QrCode";
19
19
  export * from "./components/Rating/Rating";
20
20
  export * from "./components/Sheet/Sheet";
21
21
  export * from "./components/ShowMore/ShowMore";
22
- export * from "./components/Slide/Slide";
23
22
  export * from "./components/Spoiler/Spoiler";
24
23
  export * from "./components/Steps/Steps";
25
24
  export * from "./components/Swap/Swap";
26
25
  export * from "./components/Tabs/Tabs";
27
- export * from "./components/Toast/Toast";
28
- export * from "./components/Toggle/Toggle";
@@ -0,0 +1,3 @@
1
+ export declare const getBrowserScrollbarWith: () => number;
2
+ export declare const selectAccessibleChildren: (parent: HTMLElement) => HTMLElement[];
3
+ //# sourceMappingURL=browser.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../../src/utils/browser.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,uBAAuB,cAenC,CAAA;AAED,eAAO,MAAM,wBAAwB,GAAI,QAAQ,WAAW,kBAY3D,CAAA"}
@@ -0,0 +1,21 @@
1
+ export const getBrowserScrollbarWith = () => {
2
+ const outer = document.createElement("div");
3
+ outer.style.visibility = "hidden";
4
+ outer.style.overflow = "scroll";
5
+ document.body.appendChild(outer);
6
+ const inner = document.createElement("div");
7
+ outer.appendChild(inner);
8
+ const scrollbarWidth = (outer.offsetWidth - inner.offsetWidth);
9
+ outer.parentNode?.removeChild(outer);
10
+ return scrollbarWidth;
11
+ };
12
+ export const selectAccessibleChildren = (parent) => {
13
+ const children = Array.from(parent.querySelectorAll(`
14
+ a:not([tabindex="-1"]),
15
+ input:not([disabled],[tabindex="-1"]),
16
+ select:not([disabled],[tabindex="-1"]),
17
+ textarea:not([disabled],[tabindex="-1"]),
18
+ button:not([disabled],[tabindex="-1"])
19
+ `));
20
+ return children;
21
+ };
@@ -0,0 +1,3 @@
1
+ import { type ClassValue } from "clsx";
2
+ export declare const cn: (...inputs: ClassValue[]) => string;
3
+ //# sourceMappingURL=cn.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cn.d.ts","sourceRoot":"","sources":["../../src/utils/cn.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,UAAU,EAAQ,MAAM,MAAM,CAAC;AAE7C,eAAO,MAAM,EAAE,GAAI,GAAG,QAAQ,UAAU,EAAE,WAA0B,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { twMerge } from "tailwind-merge";
2
+ import { clsx } from "clsx";
3
+ export const cn = (...inputs) => twMerge(clsx(inputs));
@@ -0,0 +1,2 @@
1
+ export declare const formatInput: (value: string, regex: RegExp) => string;
2
+ //# sourceMappingURL=form.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"form.d.ts","sourceRoot":"","sources":["../../src/utils/form.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,WAAW,GAAI,OAAO,MAAM,EAAE,OAAO,MAAM,WAUvD,CAAA"}
@@ -0,0 +1,8 @@
1
+ export const formatInput = (value, regex) => {
2
+ let correctValue = value;
3
+ const filteredValue = Array.from(value).filter(char => regex.test(char)).join("");
4
+ if (filteredValue !== value) {
5
+ correctValue = filteredValue;
6
+ }
7
+ return correctValue;
8
+ };
@@ -0,0 +1,4 @@
1
+ export * from "./utils/browser";
2
+ export * from "./utils/cn";
3
+ export * from "./utils/form";
4
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../src/utils.ts"],"names":[],"mappings":"AAAA,cAAc,iBAAiB,CAAC;AAChC,cAAc,YAAY,CAAC;AAC3B,cAAc,cAAc,CAAC"}
package/dist/utils.js ADDED
@@ -0,0 +1,3 @@
1
+ export * from "./utils/browser";
2
+ export * from "./utils/cn";
3
+ export * from "./utils/form";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kadoui/react",
3
- "version": "1.0.0",
3
+ "version": "1.1.2",
4
4
  "description": "Kadoui primitive components for React",
5
5
  "author": "Jstation",
6
6
  "license": "MIT",
@@ -9,7 +9,8 @@
9
9
  "build": "tsc"
10
10
  },
11
11
  "exports": {
12
- ".": "./dist/index.js"
12
+ ".": "./dist/index.js",
13
+ "./utils": "./dist/utils.js"
13
14
  },
14
15
  "keywords": [
15
16
  "@kadoui/react",
@@ -21,7 +22,6 @@
21
22
  "component"
22
23
  ],
23
24
  "dependencies": {
24
- "@kadoui/utils": "workspace:*",
25
25
  "react": "19.1.0",
26
26
  "react-dom": "19.1.0",
27
27
  "next": "15.4.5",
@@ -30,7 +30,9 @@
30
30
  "lucide-react": "^0.525.0",
31
31
  "qrcode": "^1.5.4",
32
32
  "zustand": "^5.0.6",
33
- "nanoid": "^5.1.5"
33
+ "nanoid": "^5.1.5",
34
+ "clsx": "^2.1.1",
35
+ "tailwind-merge": "^3.3.1"
34
36
  },
35
37
  "devDependencies": {
36
38
  "@repo/tsconfig": "workspace:*",
@@ -1,6 +0,0 @@
1
- import { PropsWithChildren } from "react";
2
- export type LinkLoaderPropsT = PropsWithChildren & {
3
- className?: string;
4
- };
5
- export declare function LinkLoader({ children, className }: LinkLoaderPropsT): string | number | bigint | boolean | import("react").JSX.Element | Iterable<import("react").ReactNode> | Promise<string | number | bigint | boolean | import("react").ReactPortal | import("react").ReactElement<unknown, string | import("react").JSXElementConstructor<any>> | Iterable<import("react").ReactNode> | null | undefined> | null | undefined;
6
- //# sourceMappingURL=LinkLoader.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"LinkLoader.d.ts","sourceRoot":"","sources":["../../../src/components/LinkLoader/LinkLoader.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,iBAAiB,EAAE,MAAM,OAAO,CAAC;AAE1C,MAAM,MAAM,gBAAgB,GAAG,iBAAiB,GAAG;IACjD,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAA;AAED,wBAAgB,UAAU,CAAC,EAAE,QAAQ,EAAE,SAAS,EAAE,EAAE,gBAAgB,+VAInE"}
@@ -1,8 +0,0 @@
1
- "use client";
2
- import { cn } from "kadoui-utils";
3
- import { LoaderIcon } from "lucide-react";
4
- import { useLinkStatus } from "next/link";
5
- export function LinkLoader({ children, className }) {
6
- const { pending } = useLinkStatus();
7
- return pending ? <LoaderIcon className={cn("compatible-icon animate-spin", className)}/> : children;
8
- }
@@ -1,4 +0,0 @@
1
- import { HTMLAttributes } from "react";
2
- export type SlideContentPropsT = HTMLAttributes<HTMLDivElement>;
3
- export declare function SlideContent({ className, ...props }: SlideContentPropsT): import("react").JSX.Element;
4
- //# sourceMappingURL=SlideContent.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"SlideContent.d.ts","sourceRoot":"","sources":["../../../src/components/Slide/SlideContent.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,OAAO,CAAC;AAEvC,MAAM,MAAM,kBAAkB,GAAG,cAAc,CAAC,cAAc,CAAC,CAAC;AAEhE,wBAAgB,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,kBAAkB,+BAEvE"}
@@ -1,4 +0,0 @@
1
- import { cn } from "kadoui-utils";
2
- export function SlideContent({ className, ...props }) {
3
- return <div className={cn("h-[calc(100dvh-5rem)] py-3 overflow-y-auto", className)} {...props}/>;
4
- }
@@ -1,11 +0,0 @@
1
- "use client";
2
- import { cn } from "kadoui-utils";
3
- import { useState } from "react";
4
- export function Spoiler({ children, className }) {
5
- const [revealed, setRevealed] = useState(false);
6
- return (<span onClick={() => setRevealed(true)} className={cn("transition-all", revealed ? "" : "inline cursor-pointer rounded overflow-hidden px-1", className)}>
7
- <span className={`transition-all ${revealed ? "" : "select-none blur-[3px]"}`}>
8
- {children}
9
- </span>
10
- </span>);
11
- }
@@ -1,46 +0,0 @@
1
- "use client";
2
-
3
- import { HTMLAttributes, KeyboardEvent } from "react";
4
- import { selectAccessibleChildren } from "@kadoui/utils";
5
-
6
- export type AccessNavigationPropsT = HTMLAttributes<HTMLDivElement> & {
7
- direction?: "y" | "x";
8
- };
9
-
10
- export function AccessNavigation({ direction = "y", dir, onKeyDown, ...p }: AccessNavigationPropsT) {
11
- const handleKeyDown = (ev: KeyboardEvent<HTMLDivElement>) => {
12
- const focusableChildren = selectAccessibleChildren(ev.currentTarget);
13
-
14
- if (!focusableChildren.length) {
15
- return;
16
- }
17
-
18
- const currentDir: "ltr" | "rtl" = (dir || document.documentElement.getAttribute("dir") || "ltr") as ("ltr" | "rtl");
19
-
20
- const currentIndex = focusableChildren.findIndex((item) => item === document.activeElement);
21
-
22
- if (ev.key === (direction === "y" ? "ArrowDown" : (currentDir === "ltr" ? "ArrowRight" : "ArrowLeft"))) {
23
- ev.preventDefault();
24
- const nextIndex =
25
- currentIndex === -1 || currentIndex === focusableChildren.length - 1 ? 0 : currentIndex + 1;
26
- focusableChildren[nextIndex]?.focus();
27
- }
28
-
29
- if (ev.key === (direction === "y" ? "ArrowUp" : (currentDir === "ltr" ? "ArrowLeft" : "ArrowRight"))) {
30
- ev.preventDefault();
31
- const prevIndex = currentIndex <= 0 ? focusableChildren.length - 1 : currentIndex - 1;
32
- focusableChildren[prevIndex]?.focus();
33
- }
34
- }
35
-
36
- return (
37
- <div
38
- dir={dir}
39
- onKeyDown={ev => {
40
- onKeyDown?.(ev);
41
- handleKeyDown(ev);
42
- }}
43
- {...p}
44
- />
45
- )
46
- }
@@ -1,8 +0,0 @@
1
- import { AccordionBody } from "./AccordionBody";
2
- import { AccordionRoot } from "./AccordionRoot";
3
- import { AccordionToggle } from "./AccordionToggle";
4
-
5
- export const Accordion = Object.assign(AccordionRoot, {
6
- Toggle: AccordionToggle,
7
- Body: AccordionBody
8
- });
@@ -1,31 +0,0 @@
1
- "use client";
2
-
3
- import { cn } from "@kadoui/utils";
4
- import { ReactNode, use } from "react";
5
- import { AnimatePresence, HTMLMotionProps, motion } from "framer-motion";
6
-
7
- import { AccordionContext } from "./AccordionContext";
8
-
9
- export type AccordionBodyPropsT = HTMLMotionProps<"div">;
10
-
11
- export function AccordionBody({ children, className, ...props }: AccordionBodyPropsT) {
12
- const { isOpen } = use(AccordionContext);
13
-
14
- return (
15
- <AnimatePresence>
16
- {isOpen ?
17
- <motion.div
18
- className={cn("overflow-hidden", className)}
19
- initial={{ height: 0, opacity: 0 }}
20
- animate={{ height: "auto", opacity: 1 }}
21
- exit={{ height: 0, opacity: 0 }}
22
- {...props}
23
- >
24
- <div className="m-3">
25
- {children as ReactNode}
26
- </div>
27
- </motion.div>
28
- : null}
29
- </AnimatePresence>
30
- )
31
- }
@@ -1,8 +0,0 @@
1
- import { createContext, Dispatch, SetStateAction } from "react";
2
-
3
- export type AccordionContextT = {
4
- isOpen: boolean;
5
- setOpen: Dispatch<SetStateAction<boolean>>;
6
- }
7
-
8
- export const AccordionContext = createContext<AccordionContextT>({} as AccordionContextT)
@@ -1,17 +0,0 @@
1
- "use client";
2
-
3
- import { PropsWithChildren, useState } from "react";
4
-
5
- import { AccordionContext } from "./AccordionContext";
6
-
7
- export type AccordionRootPropsT = PropsWithChildren;
8
-
9
- export function AccordionRoot({ children }: AccordionRootPropsT) {
10
- const [isOpen, setOpen] = useState(false);
11
-
12
- return (
13
- <AccordionContext value={{ isOpen, setOpen }}>
14
- {children}
15
- </AccordionContext>
16
- )
17
- }
@@ -1,29 +0,0 @@
1
- "use client";
2
-
3
- import { ChevronRightIcon } from "lucide-react";
4
- import { HTMLAttributes, ReactNode, use } from "react";
5
-
6
- import { AccordionContext } from "./AccordionContext";
7
-
8
- export type AccordionTogglePropsT = HTMLAttributes<HTMLButtonElement> & {
9
- icon?: ReactNode;
10
- }
11
-
12
- export function AccordionToggle({ icon, children, onClick, ...props }: AccordionTogglePropsT) {
13
- const { isOpen, setOpen } = use(AccordionContext);
14
-
15
- return (
16
- <button
17
- onClick={ev => {
18
- onClick?.(ev)
19
- setOpen(prev => !prev)
20
- }}
21
- {...props}
22
- >
23
- <span className={`transition-transform ${isOpen ? "rotate-90" : ""}`}>
24
- {icon || <ChevronRightIcon className="compatible-icon" />}
25
- </span>
26
- {children}
27
- </button>
28
- )
29
- }
@@ -1,59 +0,0 @@
1
- "use client";
2
-
3
- import { cn } from "@kadoui/utils";
4
- import { ChevronUpIcon } from "lucide-react";
5
- import { useState, useEffect, HTMLAttributes } from "react";
6
-
7
- export type AffixPropsT = HTMLAttributes<HTMLButtonElement>
8
-
9
- export const Affix = ({ className, onClick, "aria-label": ariaLabel, children, ...props }: AffixPropsT) => {
10
- const [isVisible, setIsVisible] = useState(false);
11
- const [lastScrollY, setLastScrollY] = useState(0);
12
-
13
- useEffect(() => {
14
- const handleScroll = () => {
15
- const currentScrollY = window.scrollY;
16
- const viewportHeight = window.innerHeight;
17
- const scrollThreshold = viewportHeight * 0.5;
18
-
19
- if (currentScrollY > scrollThreshold && currentScrollY > lastScrollY) {
20
- setIsVisible(true);
21
- } else if (currentScrollY < lastScrollY && currentScrollY < scrollThreshold) {
22
- setIsVisible(false);
23
- }
24
-
25
- setLastScrollY(currentScrollY);
26
- };
27
-
28
- window.addEventListener("scroll", handleScroll, {
29
- passive: true
30
- });
31
-
32
- return () => window.removeEventListener("scroll", handleScroll);
33
- }, [lastScrollY]);
34
-
35
- const scrollToTop = () => {
36
- window.scrollTo({
37
- top: 0,
38
- behavior: "smooth"
39
- });
40
- };
41
-
42
- return (
43
- <button
44
- onClick={ev => {
45
- onClick?.(ev)
46
- scrollToTop()
47
- }}
48
- aria-label={ariaLabel || "Scroll to top"}
49
- className={cn(
50
- "fixed bottom-3 right-4 transition-all z-50",
51
- isVisible ? "" : "opacity-0 translate-y-3 pointer-events-none",
52
- className
53
- )}
54
- {...props}
55
- >
56
- {children || <ChevronUpIcon className="compatible-icon" />}
57
- </button>
58
- );
59
- }
@@ -1,6 +0,0 @@
1
- import { BreadcrumbsItem } from "./BreadcrumbsItem";
2
- import { BreadcrumbsRoot } from "./BreadcrumbsRoot";
3
-
4
- export const Breadcrumbs = Object.assign(BreadcrumbsRoot, {
5
- Item: BreadcrumbsItem,
6
- });
@@ -1,7 +0,0 @@
1
- import { createContext, ReactNode } from "react";
2
-
3
- export type BreadcrumbsContextT = {
4
- separator: ReactNode;
5
- }
6
-
7
- export const BreadcrumbsContext = createContext<BreadcrumbsContextT>({} as BreadcrumbsContextT);
@@ -1,24 +0,0 @@
1
- "use client"
2
-
3
- import { cn } from "@kadoui/utils";
4
- import { type HTMLAttributes, use } from "react";
5
-
6
- import { BreadcrumbsContext } from "./BreadcrumbsContext";
7
-
8
- export type BreadcrumbsItemPropsT = HTMLAttributes<HTMLDivElement> & {
9
- isLast?: boolean;
10
- }
11
-
12
- export function BreadcrumbsItem({ isLast = false, className, children, ...p }: BreadcrumbsItemPropsT) {
13
- const { separator } = use(BreadcrumbsContext);
14
-
15
- return (
16
- <div
17
- className={cn("f-center gap-1.5", className)}
18
- {...p}
19
- >
20
- {children}
21
- {!isLast && separator}
22
- </div>
23
- )
24
- }
@@ -1,21 +0,0 @@
1
- "use client"
2
-
3
- import { cn } from "@kadoui/utils";
4
- import type { HTMLAttributes, ReactNode } from "react";
5
-
6
- import { BreadcrumbsContext } from "./BreadcrumbsContext";
7
-
8
- export type BreadcrumbsRootPropsT = HTMLAttributes<HTMLElement> & {
9
- separator?: ReactNode;
10
- }
11
-
12
- export function BreadcrumbsRoot({ separator = "/", className, ...p }: BreadcrumbsRootPropsT) {
13
- return (
14
- <BreadcrumbsContext value={{ separator }}>
15
- <nav
16
- className={cn("f-align gap-3", className)}
17
- {...p}
18
- />
19
- </BreadcrumbsContext>
20
- )
21
- }
@@ -1,6 +0,0 @@
1
- import { CarouselRoot } from "./CarouselRoot";
2
- import { CarouselContainer } from "./CarouselContainer";
3
-
4
- export const Carousel = Object.assign(CarouselRoot, {
5
- Container: CarouselContainer
6
- });
@@ -1,18 +0,0 @@
1
- "use client";
2
-
3
- import { cn } from "@kadoui/utils";
4
- import { HTMLAttributes, use } from "react";
5
-
6
- import { CarouselContext } from "./CarouselContext";
7
-
8
- export type CarouselContainerPropsT = HTMLAttributes<HTMLDivElement>;
9
-
10
- export function CarouselContainer({ children, className, ...p }: CarouselContainerPropsT) {
11
- const { scrollRef } = use(CarouselContext);
12
-
13
- return (
14
- <div ref={scrollRef} className={cn("f-align-scroll", className)} {...p}>
15
- {children}
16
- </div>
17
- );
18
- }
@@ -1,7 +0,0 @@
1
- import { createContext, RefObject } from "react";
2
-
3
- export type CarouselContextPropsT = {
4
- scrollRef: RefObject<HTMLDivElement | null>;
5
- }
6
-
7
- export const CarouselContext = createContext<CarouselContextPropsT>({} as CarouselContextPropsT);