saha-ui 1.7.0 → 1.9.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 (677) hide show
  1. package/README.md +95 -67
  2. package/bin/cli.js +19 -0
  3. package/dist/components/Accordion/Accordion.styles.d.ts +14 -0
  4. package/dist/components/Accordion/Accordion.styles.d.ts.map +1 -0
  5. package/dist/components/Accordion/Accordion.styles.js +69 -0
  6. package/dist/components/Accordion/index.d.ts.map +1 -1
  7. package/dist/components/Accordion/index.js +105 -149
  8. package/dist/components/Alert/Alert.styles.d.ts +6 -0
  9. package/dist/components/Alert/Alert.styles.d.ts.map +1 -0
  10. package/dist/components/Alert/Alert.styles.js +162 -0
  11. package/dist/components/Alert/index.d.ts.map +1 -1
  12. package/dist/components/Alert/index.js +60 -199
  13. package/dist/components/AspectRatio/AspectRatio.styles.d.ts +12 -0
  14. package/dist/components/AspectRatio/AspectRatio.styles.d.ts.map +1 -0
  15. package/dist/components/AspectRatio/AspectRatio.styles.js +89 -0
  16. package/dist/components/AspectRatio/AspectRatio.types.d.ts +148 -0
  17. package/dist/components/AspectRatio/AspectRatio.types.d.ts.map +1 -0
  18. package/dist/components/AspectRatio/index.d.ts +37 -0
  19. package/dist/components/AspectRatio/index.d.ts.map +1 -0
  20. package/dist/components/AspectRatio/index.js +162 -0
  21. package/dist/components/Autocomplete/Autocomplete.styles.d.ts +28 -0
  22. package/dist/components/Autocomplete/Autocomplete.styles.d.ts.map +1 -0
  23. package/dist/components/Autocomplete/Autocomplete.styles.js +166 -0
  24. package/dist/components/Autocomplete/index.d.ts +19 -2
  25. package/dist/components/Autocomplete/index.d.ts.map +1 -1
  26. package/dist/components/Autocomplete/index.js +520 -5
  27. package/dist/components/Avatar/Avatar.styles.d.ts +12 -0
  28. package/dist/components/Avatar/Avatar.styles.d.ts.map +1 -0
  29. package/dist/components/Avatar/Avatar.styles.js +64 -0
  30. package/dist/components/Avatar/index.d.ts.map +1 -1
  31. package/dist/components/Avatar/index.js +73 -113
  32. package/dist/components/AvatarGroup/AvatarGroup.styles.d.ts +21 -0
  33. package/dist/components/AvatarGroup/AvatarGroup.styles.d.ts.map +1 -0
  34. package/dist/components/AvatarGroup/AvatarGroup.styles.js +60 -0
  35. package/dist/components/AvatarGroup/index.d.ts.map +1 -1
  36. package/dist/components/AvatarGroup/index.js +82 -108
  37. package/dist/components/Badge/Badge.styles.d.ts +10 -0
  38. package/dist/components/Badge/Badge.styles.d.ts.map +1 -0
  39. package/dist/components/Badge/Badge.styles.js +40 -0
  40. package/dist/components/Badge/Badge.types.d.ts +1 -1
  41. package/dist/components/Badge/Badge.types.d.ts.map +1 -1
  42. package/dist/components/Badge/index.d.ts +1 -8
  43. package/dist/components/Badge/index.d.ts.map +1 -1
  44. package/dist/components/Badge/index.js +56 -66
  45. package/dist/components/Breadcrumb/Breadcrumb.styles.d.ts +13 -0
  46. package/dist/components/Breadcrumb/Breadcrumb.styles.d.ts.map +1 -0
  47. package/dist/components/Breadcrumb/Breadcrumb.styles.js +89 -0
  48. package/dist/components/Breadcrumb/index.d.ts.map +1 -1
  49. package/dist/components/Breadcrumb/index.js +65 -130
  50. package/dist/components/Button/Button.styles.d.ts +9 -0
  51. package/dist/components/Button/Button.styles.d.ts.map +1 -0
  52. package/dist/components/Button/Button.styles.js +53 -0
  53. package/dist/components/Button/index.d.ts +1 -4
  54. package/dist/components/Button/index.d.ts.map +1 -1
  55. package/dist/components/Button/index.js +42 -73
  56. package/dist/components/ButtonGroup/ButtonGroup.styles.d.ts +8 -0
  57. package/dist/components/ButtonGroup/ButtonGroup.styles.d.ts.map +1 -0
  58. package/dist/components/ButtonGroup/ButtonGroup.styles.js +47 -0
  59. package/dist/components/ButtonGroup/index.d.ts +1 -6
  60. package/dist/components/ButtonGroup/index.d.ts.map +1 -1
  61. package/dist/components/ButtonGroup/index.js +90 -105
  62. package/dist/components/Calendar/Calendar.styles.d.ts +20 -0
  63. package/dist/components/Calendar/Calendar.styles.d.ts.map +1 -0
  64. package/dist/components/Calendar/Calendar.styles.js +423 -0
  65. package/dist/components/Calendar/Calendar.types.d.ts +268 -0
  66. package/dist/components/Calendar/Calendar.types.d.ts.map +1 -0
  67. package/dist/components/Calendar/index.d.ts +37 -0
  68. package/dist/components/Calendar/index.d.ts.map +1 -0
  69. package/dist/components/Calendar/index.js +360 -0
  70. package/dist/components/Card/Card.styles.d.ts +7 -0
  71. package/dist/components/Card/Card.styles.d.ts.map +1 -0
  72. package/dist/components/Card/Card.styles.js +61 -0
  73. package/dist/components/Card/index.d.ts +1 -6
  74. package/dist/components/Card/index.d.ts.map +1 -1
  75. package/dist/components/Card/index.js +80 -110
  76. package/dist/components/Carousel/Carousel.styles.d.ts +12 -0
  77. package/dist/components/Carousel/Carousel.styles.d.ts.map +1 -0
  78. package/dist/components/Carousel/Carousel.styles.js +57 -0
  79. package/dist/components/Carousel/index.d.ts.map +1 -1
  80. package/dist/components/Carousel/index.js +174 -174
  81. package/dist/components/Checkbox/Checkbox.styles.d.ts +29 -0
  82. package/dist/components/Checkbox/Checkbox.styles.d.ts.map +1 -0
  83. package/dist/components/Checkbox/Checkbox.styles.js +159 -0
  84. package/dist/components/Checkbox/Checkbox.types.d.ts +1 -1
  85. package/dist/components/Checkbox/Checkbox.types.d.ts.map +1 -1
  86. package/dist/components/Checkbox/index.d.ts +0 -7
  87. package/dist/components/Checkbox/index.d.ts.map +1 -1
  88. package/dist/components/Checkbox/index.js +236 -308
  89. package/dist/components/Chip/Chip.styles.d.ts +8 -0
  90. package/dist/components/Chip/Chip.styles.d.ts.map +1 -0
  91. package/dist/components/Chip/Chip.styles.js +229 -0
  92. package/dist/components/Chip/Chip.types.d.ts +1 -1
  93. package/dist/components/Chip/Chip.types.d.ts.map +1 -1
  94. package/dist/components/Chip/index.d.ts +1 -22
  95. package/dist/components/Chip/index.d.ts.map +1 -1
  96. package/dist/components/Chip/index.js +73 -267
  97. package/dist/components/CodeEditor/CodeEditor.d.ts +37 -0
  98. package/dist/components/CodeEditor/CodeEditor.d.ts.map +1 -0
  99. package/dist/components/CodeEditor/CodeEditor.js +204 -0
  100. package/dist/components/CodeEditor/CodeEditor.types.d.ts +12 -0
  101. package/dist/components/CodeEditor/CodeEditor.types.d.ts.map +1 -0
  102. package/dist/components/CodeEditor/CodeViewer.d.ts +10 -0
  103. package/dist/components/CodeEditor/CodeViewer.d.ts.map +1 -0
  104. package/dist/components/CodeEditor/CodeViewer.js +30 -0
  105. package/dist/components/CodeEditor/StatusBar.d.ts +11 -0
  106. package/dist/components/CodeEditor/StatusBar.d.ts.map +1 -0
  107. package/dist/components/CodeEditor/StatusBar.js +35 -0
  108. package/dist/components/CodeEditor/TabBar.d.ts +8 -0
  109. package/dist/components/CodeEditor/TabBar.d.ts.map +1 -0
  110. package/dist/components/CodeEditor/TabBar.js +8 -0
  111. package/dist/components/CodeEditor/Toolbar.d.ts +24 -0
  112. package/dist/components/CodeEditor/Toolbar.d.ts.map +1 -0
  113. package/dist/components/CodeEditor/Toolbar.js +89 -0
  114. package/dist/components/CodeEditor/constants.d.ts +32 -0
  115. package/dist/components/CodeEditor/constants.d.ts.map +1 -0
  116. package/dist/components/CodeEditor/constants.js +84 -0
  117. package/dist/components/CodeEditor/index.d.ts +4 -0
  118. package/dist/components/CodeEditor/index.d.ts.map +1 -0
  119. package/dist/components/CodeEditor/index.js +6 -0
  120. package/dist/components/CodeEditor/useMonacoTheme.d.ts +3 -0
  121. package/dist/components/CodeEditor/useMonacoTheme.d.ts.map +1 -0
  122. package/dist/components/CodeEditor/useMonacoTheme.js +126 -0
  123. package/dist/components/CodeEditor/variants.d.ts +82 -0
  124. package/dist/components/CodeEditor/variants.d.ts.map +1 -0
  125. package/dist/components/CodeEditor/variants.js +774 -0
  126. package/dist/components/CodeEditor/vscodeOptions.d.ts +6 -0
  127. package/dist/components/CodeEditor/vscodeOptions.d.ts.map +1 -0
  128. package/dist/components/CodeEditor/vscodeOptions.js +184 -0
  129. package/dist/components/Collapsible/Collapsible.styles.d.ts +29 -0
  130. package/dist/components/Collapsible/Collapsible.styles.d.ts.map +1 -0
  131. package/dist/components/Collapsible/Collapsible.styles.js +229 -0
  132. package/dist/components/Collapsible/Collapsible.types.d.ts +156 -0
  133. package/dist/components/Collapsible/Collapsible.types.d.ts.map +1 -0
  134. package/dist/components/Collapsible/index.d.ts +100 -0
  135. package/dist/components/Collapsible/index.d.ts.map +1 -0
  136. package/dist/components/Collapsible/index.js +266 -0
  137. package/dist/components/Combobox/Combobox.d.ts +52 -0
  138. package/dist/components/Combobox/Combobox.d.ts.map +1 -0
  139. package/dist/components/Combobox/Combobox.js +764 -0
  140. package/dist/components/Combobox/Combobox.styles.d.ts +31 -0
  141. package/dist/components/Combobox/Combobox.styles.d.ts.map +1 -0
  142. package/dist/components/Combobox/Combobox.styles.js +176 -0
  143. package/dist/components/Combobox/Combobox.types.d.ts +177 -0
  144. package/dist/components/Combobox/Combobox.types.d.ts.map +1 -0
  145. package/dist/components/Combobox/index.d.ts +3 -0
  146. package/dist/components/Combobox/index.d.ts.map +1 -0
  147. package/dist/components/Combobox/index.js +15 -0
  148. package/dist/components/Command/Command.d.ts +40 -0
  149. package/dist/components/Command/Command.d.ts.map +1 -0
  150. package/dist/components/Command/Command.js +417 -0
  151. package/dist/components/Command/Command.styles.d.ts +23 -0
  152. package/dist/components/Command/Command.styles.d.ts.map +1 -0
  153. package/dist/components/Command/Command.styles.js +88 -0
  154. package/dist/components/Command/Command.types.d.ts +123 -0
  155. package/dist/components/Command/Command.types.d.ts.map +1 -0
  156. package/dist/components/Command/index.d.ts +3 -0
  157. package/dist/components/Command/index.d.ts.map +1 -0
  158. package/dist/components/Command/index.js +13 -0
  159. package/dist/components/ContextMenu/ContextMenu.styles.d.ts +53 -0
  160. package/dist/components/ContextMenu/ContextMenu.styles.d.ts.map +1 -0
  161. package/dist/components/ContextMenu/ContextMenu.styles.js +297 -0
  162. package/dist/components/ContextMenu/ContextMenu.types.d.ts +111 -0
  163. package/dist/components/ContextMenu/ContextMenu.types.d.ts.map +1 -0
  164. package/dist/components/ContextMenu/index.d.ts +19 -0
  165. package/dist/components/ContextMenu/index.d.ts.map +1 -0
  166. package/dist/components/ContextMenu/index.js +934 -0
  167. package/dist/components/DataTable/DataTable.styles.d.ts +53 -0
  168. package/dist/components/DataTable/DataTable.styles.d.ts.map +1 -0
  169. package/dist/components/DataTable/DataTable.styles.js +271 -0
  170. package/dist/components/DataTable/DataTable.types.d.ts +278 -0
  171. package/dist/components/DataTable/DataTable.types.d.ts.map +1 -0
  172. package/dist/components/DataTable/index.d.ts +94 -0
  173. package/dist/components/DataTable/index.d.ts.map +1 -0
  174. package/dist/components/DataTable/index.js +350 -0
  175. package/dist/components/DatePicker/DatePicker.styles.d.ts +14 -0
  176. package/dist/components/DatePicker/DatePicker.styles.d.ts.map +1 -0
  177. package/dist/components/DatePicker/DatePicker.styles.js +224 -0
  178. package/dist/components/DatePicker/index.d.ts +0 -13
  179. package/dist/components/DatePicker/index.d.ts.map +1 -1
  180. package/dist/components/DatePicker/index.js +246 -403
  181. package/dist/components/Dialog/Dialog.d.ts +26 -0
  182. package/dist/components/Dialog/Dialog.d.ts.map +1 -0
  183. package/dist/components/Dialog/Dialog.js +296 -0
  184. package/dist/components/Dialog/Dialog.styles.d.ts +22 -0
  185. package/dist/components/Dialog/Dialog.styles.d.ts.map +1 -0
  186. package/dist/components/{Modal/ModalOverlay.js → Dialog/Dialog.styles.js} +5 -72
  187. package/dist/components/{Modal/Modal.subcomponents.types.d.ts → Dialog/Dialog.subcomponents.types.d.ts} +23 -23
  188. package/dist/components/Dialog/Dialog.subcomponents.types.d.ts.map +1 -0
  189. package/dist/components/{Modal/Modal.types.d.ts → Dialog/Dialog.types.d.ts} +3 -3
  190. package/dist/components/Dialog/Dialog.types.d.ts.map +1 -0
  191. package/dist/components/Dialog/DialogComponents.d.ts +33 -0
  192. package/dist/components/Dialog/DialogComponents.d.ts.map +1 -0
  193. package/dist/components/Dialog/DialogComponents.js +108 -0
  194. package/dist/components/Dialog/DialogOverlay.d.ts +10 -0
  195. package/dist/components/Dialog/DialogOverlay.d.ts.map +1 -0
  196. package/dist/components/Dialog/DialogOverlay.js +73 -0
  197. package/dist/components/Dialog/index.d.ts +6 -0
  198. package/dist/components/Dialog/index.d.ts.map +1 -0
  199. package/dist/components/Dialog/index.js +16 -0
  200. package/dist/components/Drawer/Drawer.d.ts.map +1 -1
  201. package/dist/components/Drawer/Drawer.js +144 -87
  202. package/dist/components/Drawer/Drawer.styles.d.ts +18 -0
  203. package/dist/components/Drawer/Drawer.styles.d.ts.map +1 -0
  204. package/dist/components/Drawer/Drawer.styles.js +170 -0
  205. package/dist/components/Drawer/Drawer.subcomponents.types.d.ts +2 -0
  206. package/dist/components/Drawer/Drawer.subcomponents.types.d.ts.map +1 -1
  207. package/dist/components/Drawer/DrawerComponents.d.ts.map +1 -1
  208. package/dist/components/Drawer/DrawerComponents.js +63 -53
  209. package/dist/components/Drawer/DrawerOverlay.d.ts.map +1 -1
  210. package/dist/components/Drawer/DrawerOverlay.js +40 -204
  211. package/dist/components/Dropdown/Dropdown.styles.d.ts +21 -0
  212. package/dist/components/Dropdown/Dropdown.styles.d.ts.map +1 -0
  213. package/dist/components/Dropdown/Dropdown.styles.js +153 -0
  214. package/dist/components/Dropdown/index.d.ts.map +1 -1
  215. package/dist/components/Dropdown/index.js +290 -373
  216. package/dist/components/Empty/Empty.d.ts.map +1 -1
  217. package/dist/components/Empty/Empty.js +160 -187
  218. package/dist/components/Empty/Empty.styles.d.ts +19 -0
  219. package/dist/components/Empty/Empty.styles.d.ts.map +1 -0
  220. package/dist/components/Empty/Empty.styles.js +94 -0
  221. package/dist/components/Field/Field.d.ts.map +1 -1
  222. package/dist/components/Field/Field.js +213 -328
  223. package/dist/components/Field/Field.styles.d.ts +34 -0
  224. package/dist/components/Field/Field.styles.d.ts.map +1 -0
  225. package/dist/components/Field/Field.styles.js +176 -0
  226. package/dist/components/FloatingActionButton/FloatingActionButton.styles.d.ts +14 -0
  227. package/dist/components/FloatingActionButton/FloatingActionButton.styles.d.ts.map +1 -0
  228. package/dist/components/FloatingActionButton/FloatingActionButton.styles.js +113 -0
  229. package/dist/components/FloatingActionButton/FloatingActionButton.types.d.ts +1 -1
  230. package/dist/components/FloatingActionButton/FloatingActionButton.types.d.ts.map +1 -1
  231. package/dist/components/FloatingActionButton/index.d.ts +0 -34
  232. package/dist/components/FloatingActionButton/index.d.ts.map +1 -1
  233. package/dist/components/FloatingActionButton/index.js +71 -148
  234. package/dist/components/Form/Form.styles.d.ts +62 -0
  235. package/dist/components/Form/Form.styles.d.ts.map +1 -0
  236. package/dist/components/Form/Form.styles.js +223 -0
  237. package/dist/components/Form/Form.types.d.ts +194 -0
  238. package/dist/components/Form/Form.types.d.ts.map +1 -0
  239. package/dist/components/Form/index.d.ts +116 -0
  240. package/dist/components/Form/index.d.ts.map +1 -0
  241. package/dist/components/Form/index.js +339 -0
  242. package/dist/components/HoverCard/HoverCard.styles.d.ts +19 -0
  243. package/dist/components/HoverCard/HoverCard.styles.d.ts.map +1 -0
  244. package/dist/components/HoverCard/HoverCard.styles.js +66 -0
  245. package/dist/components/HoverCard/HoverCard.types.d.ts +213 -0
  246. package/dist/components/HoverCard/HoverCard.types.d.ts.map +1 -0
  247. package/dist/components/HoverCard/index.d.ts +24 -0
  248. package/dist/components/HoverCard/index.d.ts.map +1 -0
  249. package/dist/components/HoverCard/index.js +220 -0
  250. package/dist/components/Image/Image.styles.d.ts +22 -0
  251. package/dist/components/Image/Image.styles.d.ts.map +1 -0
  252. package/dist/components/Image/Image.styles.js +69 -0
  253. package/dist/components/Image/index.d.ts.map +1 -1
  254. package/dist/components/Image/index.js +111 -125
  255. package/dist/components/Input/Input.styles.d.ts +42 -0
  256. package/dist/components/Input/Input.styles.d.ts.map +1 -0
  257. package/dist/components/Input/Input.styles.js +198 -0
  258. package/dist/components/Input/index.d.ts.map +1 -1
  259. package/dist/components/Input/index.js +109 -263
  260. package/dist/components/InputOTP/InputOTP.styles.d.ts +38 -0
  261. package/dist/components/InputOTP/InputOTP.styles.d.ts.map +1 -0
  262. package/dist/components/InputOTP/InputOTP.styles.js +156 -0
  263. package/dist/components/InputOTP/InputOTP.types.d.ts +198 -0
  264. package/dist/components/InputOTP/InputOTP.types.d.ts.map +1 -0
  265. package/dist/components/InputOTP/index.d.ts +40 -0
  266. package/dist/components/InputOTP/index.d.ts.map +1 -0
  267. package/dist/components/InputOTP/index.js +309 -0
  268. package/dist/components/Item/Item.styles.d.ts +70 -0
  269. package/dist/components/Item/Item.styles.d.ts.map +1 -0
  270. package/dist/components/Item/Item.styles.js +297 -0
  271. package/dist/components/Item/Item.types.d.ts +243 -0
  272. package/dist/components/Item/Item.types.d.ts.map +1 -0
  273. package/dist/components/Item/index.d.ts +94 -0
  274. package/dist/components/Item/index.d.ts.map +1 -0
  275. package/dist/components/Item/index.js +327 -0
  276. package/dist/components/Kbd/Kbd.styles.d.ts +33 -0
  277. package/dist/components/Kbd/Kbd.styles.d.ts.map +1 -0
  278. package/dist/components/Kbd/Kbd.styles.js +195 -0
  279. package/dist/components/Kbd/Kbd.types.d.ts +176 -0
  280. package/dist/components/Kbd/Kbd.types.d.ts.map +1 -0
  281. package/dist/components/Kbd/Kbd.types.js +35 -0
  282. package/dist/components/Kbd/index.d.ts +74 -0
  283. package/dist/components/Kbd/index.d.ts.map +1 -0
  284. package/dist/components/Kbd/index.js +139 -0
  285. package/dist/components/Label/Label.styles.d.ts +39 -0
  286. package/dist/components/Label/Label.styles.d.ts.map +1 -0
  287. package/dist/components/Label/Label.styles.js +161 -0
  288. package/dist/components/Label/Label.types.d.ts +192 -0
  289. package/dist/components/Label/Label.types.d.ts.map +1 -0
  290. package/dist/components/Label/index.d.ts +95 -0
  291. package/dist/components/Label/index.d.ts.map +1 -0
  292. package/dist/components/Label/index.js +156 -0
  293. package/dist/components/Link/Link.styles.d.ts +7 -0
  294. package/dist/components/Link/Link.styles.d.ts.map +1 -0
  295. package/dist/components/Link/Link.styles.js +36 -0
  296. package/dist/components/Link/index.d.ts +1 -5
  297. package/dist/components/Link/index.d.ts.map +1 -1
  298. package/dist/components/Link/index.js +63 -65
  299. package/dist/components/List/List.styles.d.ts +12 -0
  300. package/dist/components/List/List.styles.d.ts.map +1 -0
  301. package/dist/components/List/List.styles.js +71 -0
  302. package/dist/components/List/ListItem.d.ts +1 -3
  303. package/dist/components/List/ListItem.d.ts.map +1 -1
  304. package/dist/components/List/ListItem.js +14 -31
  305. package/dist/components/List/index.d.ts.map +1 -1
  306. package/dist/components/List/index.js +61 -85
  307. package/dist/components/Menubar/Menubar.styles.d.ts +61 -0
  308. package/dist/components/Menubar/Menubar.styles.d.ts.map +1 -0
  309. package/dist/components/Menubar/Menubar.styles.js +563 -0
  310. package/dist/components/Menubar/Menubar.types.d.ts +257 -0
  311. package/dist/components/Menubar/Menubar.types.d.ts.map +1 -0
  312. package/dist/components/Menubar/index.d.ts +90 -0
  313. package/dist/components/Menubar/index.d.ts.map +1 -0
  314. package/dist/components/Menubar/index.js +433 -0
  315. package/dist/components/NativeSelect/NativeSelect.styles.d.ts +39 -0
  316. package/dist/components/NativeSelect/NativeSelect.styles.d.ts.map +1 -0
  317. package/dist/components/NativeSelect/NativeSelect.styles.js +236 -0
  318. package/dist/components/NativeSelect/NativeSelect.types.d.ts +197 -0
  319. package/dist/components/NativeSelect/NativeSelect.types.d.ts.map +1 -0
  320. package/dist/components/NativeSelect/index.d.ts +91 -0
  321. package/dist/components/NativeSelect/index.d.ts.map +1 -0
  322. package/dist/components/NativeSelect/index.js +486 -0
  323. package/dist/components/NavigationMenu/NavigationMenu.d.ts +42 -0
  324. package/dist/components/NavigationMenu/NavigationMenu.d.ts.map +1 -0
  325. package/dist/components/NavigationMenu/NavigationMenu.js +379 -0
  326. package/dist/components/NavigationMenu/NavigationMenu.styles.d.ts +31 -0
  327. package/dist/components/NavigationMenu/NavigationMenu.styles.d.ts.map +1 -0
  328. package/dist/components/NavigationMenu/NavigationMenu.styles.js +261 -0
  329. package/dist/components/NavigationMenu/NavigationMenu.types.d.ts +58 -0
  330. package/dist/components/NavigationMenu/NavigationMenu.types.d.ts.map +1 -0
  331. package/dist/components/NavigationMenu/index.d.ts +3 -0
  332. package/dist/components/NavigationMenu/index.d.ts.map +1 -0
  333. package/dist/components/NavigationMenu/index.js +10 -0
  334. package/dist/components/Pagination/Pagination.styles.d.ts +9 -0
  335. package/dist/components/Pagination/Pagination.styles.d.ts.map +1 -0
  336. package/dist/components/Pagination/Pagination.styles.js +207 -0
  337. package/dist/components/Pagination/index.d.ts +0 -8
  338. package/dist/components/Pagination/index.d.ts.map +1 -1
  339. package/dist/components/Pagination/index.js +149 -294
  340. package/dist/components/PlayButton/PlayButton.styles.d.ts +9 -0
  341. package/dist/components/PlayButton/PlayButton.styles.d.ts.map +1 -0
  342. package/dist/components/PlayButton/PlayButton.styles.js +98 -0
  343. package/dist/components/PlayButton/index.d.ts +1 -26
  344. package/dist/components/PlayButton/index.d.ts.map +1 -1
  345. package/dist/components/PlayButton/index.js +75 -134
  346. package/dist/components/Popover/Popover.styles.d.ts +17 -0
  347. package/dist/components/Popover/Popover.styles.d.ts.map +1 -0
  348. package/dist/components/Popover/Popover.styles.js +134 -0
  349. package/dist/components/Popover/Popover.types.d.ts +1 -1
  350. package/dist/components/Popover/Popover.types.d.ts.map +1 -1
  351. package/dist/components/Popover/index.d.ts +1 -16
  352. package/dist/components/Popover/index.d.ts.map +1 -1
  353. package/dist/components/Popover/index.js +170 -221
  354. package/dist/components/Progress/Progress.styles.d.ts +25 -0
  355. package/dist/components/Progress/Progress.styles.d.ts.map +1 -0
  356. package/dist/components/Progress/Progress.styles.js +136 -0
  357. package/dist/components/Progress/index.d.ts +1 -23
  358. package/dist/components/Progress/index.d.ts.map +1 -1
  359. package/dist/components/Progress/index.js +123 -193
  360. package/dist/components/Radio/Radio.styles.d.ts +35 -0
  361. package/dist/components/Radio/Radio.styles.d.ts.map +1 -0
  362. package/dist/components/Radio/Radio.styles.js +163 -0
  363. package/dist/components/Radio/Radio.types.d.ts +1 -1
  364. package/dist/components/Radio/Radio.types.d.ts.map +1 -1
  365. package/dist/components/Radio/index.d.ts +0 -13
  366. package/dist/components/Radio/index.d.ts.map +1 -1
  367. package/dist/components/Radio/index.js +212 -282
  368. package/dist/components/Rating/Rating.styles.d.ts +18 -0
  369. package/dist/components/Rating/Rating.styles.d.ts.map +1 -0
  370. package/dist/components/Rating/Rating.styles.js +66 -0
  371. package/dist/components/Rating/index.d.ts +1 -7
  372. package/dist/components/Rating/index.d.ts.map +1 -1
  373. package/dist/components/Rating/index.js +160 -177
  374. package/dist/components/Resizable/Resizable.styles.d.ts +35 -0
  375. package/dist/components/Resizable/Resizable.styles.d.ts.map +1 -0
  376. package/dist/components/Resizable/Resizable.styles.js +131 -0
  377. package/dist/components/Resizable/Resizable.types.d.ts +140 -0
  378. package/dist/components/Resizable/Resizable.types.d.ts.map +1 -0
  379. package/dist/components/Resizable/index.d.ts +14 -0
  380. package/dist/components/Resizable/index.d.ts.map +1 -0
  381. package/dist/components/Resizable/index.js +109 -0
  382. package/dist/components/ScrollArea/ScrollArea.styles.d.ts +21 -0
  383. package/dist/components/ScrollArea/ScrollArea.styles.d.ts.map +1 -0
  384. package/dist/components/ScrollArea/ScrollArea.styles.js +87 -0
  385. package/dist/components/ScrollArea/index.d.ts +30 -0
  386. package/dist/components/ScrollArea/index.d.ts.map +1 -0
  387. package/dist/components/ScrollArea/index.js +238 -0
  388. package/dist/components/Select/Select.styles.d.ts +24 -0
  389. package/dist/components/Select/Select.styles.d.ts.map +1 -0
  390. package/dist/components/Select/Select.styles.js +148 -0
  391. package/dist/components/Select/index.d.ts +0 -28
  392. package/dist/components/Select/index.d.ts.map +1 -1
  393. package/dist/components/Select/index.js +221 -306
  394. package/dist/components/Separator/Separator.styles.d.ts +14 -0
  395. package/dist/components/Separator/Separator.styles.d.ts.map +1 -0
  396. package/dist/components/Separator/Separator.styles.js +195 -0
  397. package/dist/components/Separator/Separator.types.d.ts +61 -0
  398. package/dist/components/Separator/Separator.types.d.ts.map +1 -0
  399. package/dist/components/Separator/index.d.ts +32 -0
  400. package/dist/components/Separator/index.d.ts.map +1 -0
  401. package/dist/components/Separator/index.js +123 -0
  402. package/dist/components/Skeleton/Skeleton.styles.d.ts +6 -0
  403. package/dist/components/Skeleton/Skeleton.styles.d.ts.map +1 -0
  404. package/dist/components/Skeleton/Skeleton.styles.js +98 -0
  405. package/dist/components/Skeleton/index.d.ts +0 -8
  406. package/dist/components/Skeleton/index.d.ts.map +1 -1
  407. package/dist/components/Skeleton/index.js +70 -136
  408. package/dist/components/Slider/Slider.d.ts +19 -0
  409. package/dist/components/Slider/Slider.d.ts.map +1 -0
  410. package/dist/components/Slider/Slider.js +488 -0
  411. package/dist/components/Slider/Slider.styles.d.ts +33 -0
  412. package/dist/components/Slider/Slider.styles.d.ts.map +1 -0
  413. package/dist/components/Slider/Slider.styles.js +192 -0
  414. package/dist/components/Slider/Slider.types.d.ts +41 -0
  415. package/dist/components/Slider/Slider.types.d.ts.map +1 -0
  416. package/dist/components/Slider/index.d.ts +3 -0
  417. package/dist/components/Slider/index.d.ts.map +1 -0
  418. package/dist/components/Slider/index.js +7 -0
  419. package/dist/components/Sonner/Sonner.styles.d.ts +10 -0
  420. package/dist/components/Sonner/Sonner.styles.d.ts.map +1 -0
  421. package/dist/components/Sonner/Sonner.styles.js +92 -0
  422. package/dist/components/Sonner/index.d.ts +64 -0
  423. package/dist/components/Sonner/index.d.ts.map +1 -0
  424. package/dist/components/Sonner/index.js +213 -0
  425. package/dist/components/Spinner/Spinner.styles.d.ts +28 -0
  426. package/dist/components/Spinner/Spinner.styles.d.ts.map +1 -0
  427. package/dist/components/Spinner/Spinner.styles.js +91 -0
  428. package/dist/components/Spinner/index.d.ts +1 -8
  429. package/dist/components/Spinner/index.d.ts.map +1 -1
  430. package/dist/components/Spinner/index.js +237 -252
  431. package/dist/components/Steps/Steps.styles.d.ts +17 -0
  432. package/dist/components/Steps/Steps.styles.d.ts.map +1 -0
  433. package/dist/components/Steps/Steps.styles.js +73 -0
  434. package/dist/components/Steps/index.d.ts.map +1 -1
  435. package/dist/components/Steps/index.js +101 -154
  436. package/dist/components/Switch/Switch.styles.d.ts +34 -0
  437. package/dist/components/Switch/Switch.styles.d.ts.map +1 -0
  438. package/dist/components/Switch/Switch.styles.js +151 -0
  439. package/dist/components/Switch/Switch.types.d.ts +1 -1
  440. package/dist/components/Switch/Switch.types.d.ts.map +1 -1
  441. package/dist/components/Switch/index.d.ts +0 -23
  442. package/dist/components/Switch/index.d.ts.map +1 -1
  443. package/dist/components/Switch/index.js +108 -214
  444. package/dist/components/Tab/Tab.styles.d.ts +19 -0
  445. package/dist/components/Tab/Tab.styles.d.ts.map +1 -0
  446. package/dist/components/Tab/Tab.styles.js +363 -0
  447. package/dist/components/Tab/index.d.ts.map +1 -1
  448. package/dist/components/Tab/index.js +103 -438
  449. package/dist/components/Table/Table.styles.d.ts +21 -0
  450. package/dist/components/Table/Table.styles.d.ts.map +1 -0
  451. package/dist/components/Table/Table.styles.js +95 -0
  452. package/dist/components/Table/index.d.ts.map +1 -1
  453. package/dist/components/Table/index.js +104 -173
  454. package/dist/components/Tag/Tag.styles.d.ts +20 -0
  455. package/dist/components/Tag/Tag.styles.d.ts.map +1 -0
  456. package/dist/components/Tag/Tag.styles.js +124 -0
  457. package/dist/components/Tag/index.d.ts +0 -21
  458. package/dist/components/Tag/index.d.ts.map +1 -1
  459. package/dist/components/Tag/index.js +150 -213
  460. package/dist/components/TagInput/TagInput.styles.d.ts +23 -0
  461. package/dist/components/TagInput/TagInput.styles.d.ts.map +1 -0
  462. package/dist/components/TagInput/TagInput.styles.js +125 -0
  463. package/dist/components/TagInput/index.d.ts.map +1 -1
  464. package/dist/components/TagInput/index.js +190 -246
  465. package/dist/components/TextArea/TextArea.styles.d.ts +17 -0
  466. package/dist/components/TextArea/TextArea.styles.d.ts.map +1 -0
  467. package/dist/components/TextArea/TextArea.styles.js +109 -0
  468. package/dist/components/TextArea/index.d.ts.map +1 -1
  469. package/dist/components/TextArea/index.js +159 -220
  470. package/dist/components/TextEditor/TextEditor.styles.d.ts +27 -0
  471. package/dist/components/TextEditor/TextEditor.styles.d.ts.map +1 -0
  472. package/dist/components/TextEditor/TextEditor.styles.js +286 -0
  473. package/dist/components/TextEditor/TextEditor.types.d.ts +110 -0
  474. package/dist/components/TextEditor/TextEditor.types.d.ts.map +1 -0
  475. package/dist/components/TextEditor/index.d.ts +37 -0
  476. package/dist/components/TextEditor/index.d.ts.map +1 -0
  477. package/dist/components/TextEditor/index.js +512 -0
  478. package/dist/components/ThemeProvider/index.d.ts.map +1 -1
  479. package/dist/components/ThemeProvider/index.js +28 -26
  480. package/dist/components/Timeline/Timeline.styles.d.ts +17 -0
  481. package/dist/components/Timeline/Timeline.styles.d.ts.map +1 -0
  482. package/dist/components/Timeline/Timeline.styles.js +82 -0
  483. package/dist/components/Timeline/index.d.ts.map +1 -1
  484. package/dist/components/Timeline/index.js +77 -126
  485. package/dist/components/Toast/Toast.styles.d.ts +7 -0
  486. package/dist/components/Toast/Toast.styles.d.ts.map +1 -0
  487. package/dist/components/Toast/Toast.styles.js +120 -0
  488. package/dist/components/Toast/ToastItem.d.ts.map +1 -1
  489. package/dist/components/Toast/ToastItem.js +137 -199
  490. package/dist/components/Toggle/Toggle.styles.d.ts +10 -0
  491. package/dist/components/Toggle/Toggle.styles.d.ts.map +1 -0
  492. package/dist/components/Toggle/Toggle.styles.js +92 -0
  493. package/dist/components/Toggle/Toggle.types.d.ts +135 -0
  494. package/dist/components/Toggle/Toggle.types.d.ts.map +1 -0
  495. package/dist/components/Toggle/index.d.ts +50 -0
  496. package/dist/components/Toggle/index.d.ts.map +1 -0
  497. package/dist/components/Toggle/index.js +115 -0
  498. package/dist/components/ToggleGroup/ToggleGroup.styles.d.ts +16 -0
  499. package/dist/components/ToggleGroup/ToggleGroup.styles.d.ts.map +1 -0
  500. package/dist/components/ToggleGroup/ToggleGroup.styles.js +153 -0
  501. package/dist/components/ToggleGroup/ToggleGroup.types.d.ts +85 -0
  502. package/dist/components/ToggleGroup/ToggleGroup.types.d.ts.map +1 -0
  503. package/dist/components/ToggleGroup/index.d.ts +65 -0
  504. package/dist/components/ToggleGroup/index.d.ts.map +1 -0
  505. package/dist/components/ToggleGroup/index.js +137 -0
  506. package/dist/components/Tooltip/Tooltip.styles.d.ts +15 -0
  507. package/dist/components/Tooltip/Tooltip.styles.d.ts.map +1 -0
  508. package/dist/components/Tooltip/Tooltip.styles.js +68 -0
  509. package/dist/components/Tooltip/index.d.ts +1 -33
  510. package/dist/components/Tooltip/index.d.ts.map +1 -1
  511. package/dist/components/Tooltip/index.js +146 -168
  512. package/dist/components/Tree/Tree.styles.d.ts +11 -0
  513. package/dist/components/Tree/Tree.styles.d.ts.map +1 -0
  514. package/dist/components/Tree/Tree.styles.js +48 -0
  515. package/dist/components/Tree/index.d.ts.map +1 -1
  516. package/dist/components/Tree/index.js +67 -96
  517. package/dist/components/Typography/Typography.styles.d.ts +17 -0
  518. package/dist/components/Typography/Typography.styles.d.ts.map +1 -0
  519. package/dist/components/Typography/Typography.styles.js +76 -0
  520. package/dist/components/Typography/Typography.types.d.ts +50 -0
  521. package/dist/components/Typography/Typography.types.d.ts.map +1 -0
  522. package/dist/components/Typography/index.d.ts +95 -0
  523. package/dist/components/Typography/index.d.ts.map +1 -0
  524. package/dist/components/Typography/index.js +112 -0
  525. package/dist/components/Upload/Upload.styles.d.ts +18 -0
  526. package/dist/components/Upload/Upload.styles.d.ts.map +1 -0
  527. package/dist/components/Upload/Upload.styles.js +109 -0
  528. package/dist/components/Upload/index.d.ts.map +1 -1
  529. package/dist/components/Upload/index.js +288 -301
  530. package/dist/hooks/index.d.ts +47 -0
  531. package/dist/hooks/index.d.ts.map +1 -0
  532. package/dist/hooks/index.js +68 -0
  533. package/dist/hooks/useAccordion.d.ts +69 -0
  534. package/dist/hooks/useAccordion.d.ts.map +1 -0
  535. package/dist/hooks/useAccordion.js +36 -0
  536. package/dist/hooks/useAnimation.d.ts +25 -0
  537. package/dist/hooks/useAnimation.d.ts.map +1 -0
  538. package/dist/hooks/useAnimation.js +34 -0
  539. package/dist/hooks/useArray.d.ts +28 -0
  540. package/dist/hooks/useArray.d.ts.map +1 -0
  541. package/dist/hooks/useArray.js +50 -0
  542. package/dist/hooks/useAspectRatio.d.ts +84 -0
  543. package/dist/hooks/useAspectRatio.d.ts.map +1 -0
  544. package/dist/hooks/useAspectRatio.js +52 -0
  545. package/dist/hooks/useAsync.d.ts +25 -0
  546. package/dist/hooks/useAsync.d.ts.map +1 -0
  547. package/dist/hooks/useAsync.js +53 -0
  548. package/dist/hooks/useAvatar.d.ts +74 -0
  549. package/dist/hooks/useAvatar.d.ts.map +1 -0
  550. package/dist/hooks/useAvatar.js +44 -0
  551. package/dist/hooks/useClickOutside.d.ts +19 -0
  552. package/dist/hooks/useClickOutside.d.ts.map +1 -0
  553. package/dist/hooks/useClickOutside.js +19 -0
  554. package/dist/hooks/useClipboard.d.ts +5 -0
  555. package/dist/hooks/useClipboard.d.ts.map +1 -0
  556. package/dist/hooks/useClipboard.js +15 -0
  557. package/dist/hooks/useColorMode.d.ts +21 -0
  558. package/dist/hooks/useColorMode.d.ts.map +1 -0
  559. package/dist/hooks/useColorMode.js +48 -0
  560. package/dist/hooks/useControllableState.d.ts +14 -0
  561. package/dist/hooks/useControllableState.d.ts.map +1 -0
  562. package/dist/hooks/useControllableState.js +17 -0
  563. package/dist/hooks/useCounter.d.ts +14 -0
  564. package/dist/hooks/useCounter.d.ts.map +1 -0
  565. package/dist/hooks/useCounter.js +8 -0
  566. package/dist/hooks/useDOM.d.ts +45 -0
  567. package/dist/hooks/useDOM.d.ts.map +1 -0
  568. package/dist/hooks/useDOM.js +56 -0
  569. package/dist/hooks/useDataTable.d.ts +22 -0
  570. package/dist/hooks/useDataTable.d.ts.map +1 -0
  571. package/dist/hooks/useDataTable.js +205 -0
  572. package/dist/hooks/useDebounce.d.ts +27 -0
  573. package/dist/hooks/useDebounce.d.ts.map +1 -0
  574. package/dist/hooks/useDebounce.js +31 -0
  575. package/dist/hooks/useDisclosure.d.ts +14 -0
  576. package/dist/hooks/useDisclosure.d.ts.map +1 -0
  577. package/dist/hooks/useDisclosure.js +20 -0
  578. package/dist/hooks/useEventListener.d.ts +23 -0
  579. package/dist/hooks/useEventListener.d.ts.map +1 -0
  580. package/dist/hooks/useEventListener.js +32 -0
  581. package/dist/hooks/useFetch.d.ts +21 -0
  582. package/dist/hooks/useFetch.d.ts.map +1 -0
  583. package/dist/hooks/useFetch.js +36 -0
  584. package/dist/hooks/useFocusTrap.d.ts +3 -0
  585. package/dist/hooks/useFocusTrap.d.ts.map +1 -0
  586. package/dist/hooks/useFocusTrap.js +17 -0
  587. package/dist/hooks/useForm.d.ts +51 -0
  588. package/dist/hooks/useForm.d.ts.map +1 -0
  589. package/dist/hooks/useForm.js +96 -0
  590. package/dist/hooks/useHover.d.ts +10 -0
  591. package/dist/hooks/useHover.d.ts.map +1 -0
  592. package/dist/hooks/useHover.js +13 -0
  593. package/dist/hooks/useIntersectionObserver.d.ts +27 -0
  594. package/dist/hooks/useIntersectionObserver.d.ts.map +1 -0
  595. package/dist/hooks/useIntersectionObserver.js +34 -0
  596. package/dist/hooks/useInterval.d.ts +23 -0
  597. package/dist/hooks/useInterval.d.ts.map +1 -0
  598. package/dist/hooks/useInterval.js +31 -0
  599. package/dist/hooks/useLocalStorage.d.ts +11 -0
  600. package/dist/hooks/useLocalStorage.d.ts.map +1 -0
  601. package/dist/hooks/useLocalStorage.js +43 -0
  602. package/dist/hooks/useMediaQuery.d.ts +19 -0
  603. package/dist/hooks/useMediaQuery.d.ts.map +1 -0
  604. package/dist/hooks/useMediaQuery.js +24 -0
  605. package/dist/hooks/useMergedRefs.d.ts +21 -0
  606. package/dist/hooks/useMergedRefs.d.ts.map +1 -0
  607. package/dist/hooks/useMergedRefs.js +15 -0
  608. package/dist/hooks/usePagination.d.ts +26 -0
  609. package/dist/hooks/usePagination.d.ts.map +1 -0
  610. package/dist/hooks/usePagination.js +52 -0
  611. package/dist/hooks/usePrevious.d.ts +12 -0
  612. package/dist/hooks/usePrevious.d.ts.map +1 -0
  613. package/dist/hooks/usePrevious.js +10 -0
  614. package/dist/hooks/useReducedMotion.d.ts +6 -0
  615. package/dist/hooks/useReducedMotion.d.ts.map +1 -0
  616. package/dist/hooks/useReducedMotion.js +7 -0
  617. package/dist/hooks/useScrollLock.d.ts +11 -0
  618. package/dist/hooks/useScrollLock.d.ts.map +1 -0
  619. package/dist/hooks/useScrollLock.js +14 -0
  620. package/dist/hooks/useSearchFilter.d.ts +21 -0
  621. package/dist/hooks/useSearchFilter.d.ts.map +1 -0
  622. package/dist/hooks/useSearchFilter.js +27 -0
  623. package/dist/hooks/useSessionStorage.d.ts +12 -0
  624. package/dist/hooks/useSessionStorage.d.ts.map +1 -0
  625. package/dist/hooks/useSessionStorage.js +49 -0
  626. package/dist/hooks/useThrottle.d.ts +12 -0
  627. package/dist/hooks/useThrottle.d.ts.map +1 -0
  628. package/dist/hooks/useThrottle.js +16 -0
  629. package/dist/hooks/useTimeout.d.ts +7 -0
  630. package/dist/hooks/useTimeout.d.ts.map +1 -0
  631. package/dist/hooks/useTimeout.js +15 -0
  632. package/dist/hooks/useToggle.d.ts +10 -0
  633. package/dist/hooks/useToggle.d.ts.map +1 -0
  634. package/dist/hooks/useToggle.js +14 -0
  635. package/dist/hooks/useUpdateEffect.d.ts +15 -0
  636. package/dist/hooks/useUpdateEffect.d.ts.map +1 -0
  637. package/dist/hooks/useUpdateEffect.js +14 -0
  638. package/dist/hooks/useValidation.d.ts +42 -0
  639. package/dist/hooks/useValidation.d.ts.map +1 -0
  640. package/dist/hooks/useValidation.js +66 -0
  641. package/dist/hooks/useWindowSize.d.ts +13 -0
  642. package/dist/hooks/useWindowSize.d.ts.map +1 -0
  643. package/dist/hooks/useWindowSize.js +28 -0
  644. package/dist/index.d.ts +45 -5
  645. package/dist/index.d.ts.map +1 -1
  646. package/dist/index.js +373 -176
  647. package/dist/lib/validation.d.ts +128 -0
  648. package/dist/lib/validation.d.ts.map +1 -0
  649. package/dist/lib/validation.js +169 -0
  650. package/package.json +8 -1
  651. package/dist/components/Autocomplete/Autocomplete.d.ts +0 -20
  652. package/dist/components/Autocomplete/Autocomplete.d.ts.map +0 -1
  653. package/dist/components/Autocomplete/Autocomplete.js +0 -603
  654. package/dist/components/Divider/Divider.types.d.ts +0 -61
  655. package/dist/components/Divider/Divider.types.d.ts.map +0 -1
  656. package/dist/components/Divider/index.d.ts +0 -65
  657. package/dist/components/Divider/index.d.ts.map +0 -1
  658. package/dist/components/Divider/index.js +0 -275
  659. package/dist/components/Field/FieldExample.d.ts +0 -3
  660. package/dist/components/Field/FieldExample.d.ts.map +0 -1
  661. package/dist/components/Field/FieldExample.js +0 -450
  662. package/dist/components/Modal/Modal.d.ts +0 -26
  663. package/dist/components/Modal/Modal.d.ts.map +0 -1
  664. package/dist/components/Modal/Modal.js +0 -181
  665. package/dist/components/Modal/Modal.subcomponents.types.d.ts.map +0 -1
  666. package/dist/components/Modal/Modal.types.d.ts.map +0 -1
  667. package/dist/components/Modal/ModalComponents.d.ts +0 -33
  668. package/dist/components/Modal/ModalComponents.d.ts.map +0 -1
  669. package/dist/components/Modal/ModalComponents.js +0 -108
  670. package/dist/components/Modal/ModalOverlay.d.ts +0 -10
  671. package/dist/components/Modal/ModalOverlay.d.ts.map +0 -1
  672. package/dist/components/Modal/index.d.ts +0 -6
  673. package/dist/components/Modal/index.d.ts.map +0 -1
  674. package/dist/components/Modal/index.js +0 -16
  675. package/dist/components/Modal/index.old.d.ts +0 -52
  676. package/dist/components/Modal/index.old.d.ts.map +0 -1
  677. package/dist/components/Modal/index.old.js +0 -372
package/README.md CHANGED
@@ -27,7 +27,7 @@
27
27
 
28
28
  ## ✨ Features
29
29
 
30
- - 🎨 **45 Modern Components** - Button, ButtonGroup, Alert, Badge, Breadcrumb, Card, Chip, Divider, Drawer, Accordion, Avatar, AvatarGroup, Tooltip, Link, List, Timeline, Tree, Image, Carousel, Steps, Table, Rating, Progress, Popover, PlayButton, FloatingActionButton, Radio, Switch, Checkbox, CheckboxGroup, Select, Dropdown, Tag, TagInput, TextArea, Upload, Modal, Toast, Empty, Autocomplete, Skeleton, Pagination, DatePicker, Tab, Input
30
+ - 🎨 **73 Modern Components** - Accordion, Alert, AspectRatio, Autocomplete, Avatar, AvatarGroup, Badge, Breadcrumb, Button, ButtonGroup, Calendar, Card, Carousel, Checkbox, Chip, CodeEditor, Collapsible, Combobox, Command, ContextMenu, DataTable, DatePicker, Dialog, Drawer, Dropdown, Empty, Field, FloatingActionButton, Form, HoverCard, Image, Input, InputOTP, Item, Kbd, Label, Link, List, Menubar, NativeSelect, NavigationMenu, Pagination, PlayButton, Popover, Progress, Radio, Rating, Resizable, ScrollArea, Select, Separator, Skeleton, Slider, Sonner, Spinner, Steps, Switch, Tab, Table, Tag, TagInput, TextArea, TextEditor, ThemeProvider, ThemeToggle, Timeline, Toast, Toggle, ToggleGroup, Tooltip, Tree, Typography, Upload
31
31
  - 🌓 **Dark Mode** - Seamless theme switching with full dark mode support
32
32
  - 🔮 **Glass Morphism** - Beautiful backdrop blur effects across components
33
33
  - 🎯 **Type-Safe** - Full TypeScript support with comprehensive prop types
@@ -38,6 +38,7 @@
38
38
  - 📦 **Modular** - Individual component imports for maximum flexibility
39
39
  - 📱 **Responsive** - Mobile-first design with touch gesture support
40
40
  - 🔧 **Customizable** - Easy to extend and customize with Tailwind CSS
41
+ - 🪝 **Custom Hooks** - Reusable hooks for complex component logic (useAccordion, useAspectRatio, useAvatar, and more)
41
42
 
42
43
  ---
43
44
 
@@ -141,58 +142,85 @@ import { cn } from "saha-ui/lib/utils";
141
142
 
142
143
  | Component | Description | Status | CVA |
143
144
  | ------------------------ | ------------------------------------------------------------------------ | ------ | --- |
144
- | **Button** | Action buttons with 9 variants and 4 sizes | ✅ | ✅ |
145
- | **ButtonGroup** | Grouped buttons with horizontal/vertical layouts | ✅ | ✅ |
145
+ | **Accordion** | Collapsible content with 5 behavior modes (useAccordion hook) | ✅ | ✅ |
146
146
  | **Alert** | Notification messages with 5 variants × 4 statuses | ✅ | ✅ |
147
+ | **AspectRatio** | Aspect ratio container with zoom effects (useAspectRatio hook) | ✅ | ✅ |
148
+ | **Autocomplete** | Search input with filtering, keyboard nav, grouping, async, composable | ✅ | ✅ |
149
+ | **Avatar** | User profile images with status indicators (useAvatar hook) | ✅ | ✅ |
150
+ | **AvatarGroup** | Grouped avatars with overlap and count | ✅ | ✅ |
147
151
  | **Badge** | Status indicators and labels with 9 variants | ✅ | ✅ |
148
152
  | **Breadcrumb** | Navigation trail with 5 variants, 4 separators, and collapsing | ✅ | ✅ |
153
+ | **Button** | Action buttons with 9 variants and 4 sizes | ✅ | ✅ |
154
+ | **ButtonGroup** | Grouped buttons with horizontal/vertical layouts | ✅ | ✅ |
155
+ | **Calendar** | Date calendar with month/year navigation and date selection | ✅ | ✅ |
149
156
  | **Card** | Container with 5 variants and sub-components | ✅ | ✅ |
157
+ | **Carousel** | Image slider with 4 transition effects and autoplay | ✅ | ✅ |
158
+ | **Checkbox** | Checkbox with 7 variants, 3 sizes, indeterminate, card mode, icons | ✅ | ✅ |
150
159
  | **Chip** | Interactive tags with 5 variants, deletable, and avatars | ✅ | ✅ |
151
- | **Divider** | Content separator with 5 variants and label support | ✅ | ✅ |
160
+ | **CodeEditor** | Code editor with syntax highlighting and themes | ✅ | ✅ |
161
+ | **Collapsible** | Expandable content with smooth animations | ✅ | ✅ |
162
+ | **Combobox** | Combined input and dropdown with search and selection | ✅ | ✅ |
163
+ | **Command** | Command palette with search and keyboard navigation | ✅ | ✅ |
164
+ | **ContextMenu** | Right-click context menu with nested items and shortcuts | ✅ | ✅ |
165
+ | **DataTable** | Advanced data table with sorting, filtering, pagination | ✅ | ✅ |
166
+ | **DatePicker** | Calendar date picker with 5 variants, 3 sizes, date restrictions | ✅ | ✅ |
167
+ | **Dialog** | Dialog with 9 variants, 7 sizes, animations, focus trap, accessibility | ✅ | ✅ |
152
168
  | **Drawer** | Side panel with 4 positions, 5 sizes, animations, nested support | ✅ | ✅ |
153
- | **Accordion** | Collapsible content with 5 behavior modes | ✅ | ✅ |
154
- | **Avatar** | User profile images with status indicators | ✅ | ✅ |
155
- | **AvatarGroup** | Grouped avatars with overlap and count | ✅ | ✅ |
156
- | **Tooltip** | Contextual hints with 9 variants, 4 triggers, and interactive mode | ✅ | ✅ |
169
+ | **Dropdown** | Advanced menu with nested items, keyboard nav, search, shortcuts, badges | ✅ | ✅ |
170
+ | **Empty** | Empty states with 4 variants, 4 sizes, 13 preset icons, animations | ✅ | ✅ |
171
+ | **Field** | Form field wrapper with label, description, and error states | ✅ | ✅ |
172
+ | **FloatingActionButton** | Modern FAB with 9 variants, 4 sizes, positions, extended mode | ✅ | ✅ |
173
+ | **Form** | Form container with validation and layout management | ✅ | ✅ |
174
+ | **HoverCard** | Rich hover card with content preview and positioning | ✅ | ✅ |
175
+ | **Image** | Advanced image with lazy loading and aspect ratio | ✅ | ✅ |
176
+ | **Input** | Text input with 10 variants, 4 sizes, icons, validation, all input types | ✅ | ✅ |
177
+ | **InputOTP** | One-time password input with auto-focus and paste support | ✅ | ✅ |
178
+ | **Item** | Flexible item component for lists and menus | ✅ | ✅ |
179
+ | **Kbd** | Keyboard key display with multiple styles and combinations | ✅ | ✅ |
180
+ | **Label** | Form label with required indicator and description | ✅ | ✅ |
157
181
  | **Link** | Smart links with 9 variants and icon support | ✅ | ✅ |
158
182
  | **List** | Modern lists with 5 variants and icon support | ✅ | ✅ |
159
- | **Timeline** | Chronological events with 4 variants, positions, and statuses | ✅ | ✅ |
160
- | **Tree** | Hierarchical data with 4 variants, icons, and expand/collapse | ✅ | ✅ |
161
- | **Image** | Advanced image with lazy loading | ✅ | ✅ |
162
- | **Carousel** | Image slider with 4 transition effects | ✅ | ✅ |
163
- | **Steps** | Progress indicator with 4 variants, horizontal/vertical layouts | ✅ | ✅ |
164
- | **Table** | Data table with sorting, selection, 5 variants, and responsive | ✅ | ✅ |
165
- | **Rating** | Star rating with 6 variants, 4 sizes, multiple icons, half stars | ✅ | ✅ |
166
- | **Progress** | Progress bar with 9 variants, 5 sizes, animations, striped | ✅ | ✅ |
167
- | **Popover** | Rich content popover with 11 variants, 12 positions, 4 triggers | ✅ | ✅ |
183
+ | **Menubar** | Menu bar with dropdown menus and keyboard navigation | ✅ | ✅ |
184
+ | **NativeSelect** | Native select dropdown with custom styling | ✅ | ✅ |
185
+ | **NavigationMenu** | Navigation menu with nested items and mega menu support | ✅ | ✅ |
186
+ | **Pagination** | Page navigation with 5 variants, 3 sizes, ellipsis, customizable labels | ✅ | ✅ |
168
187
  | **PlayButton** | Animated play/pause button with 9 variants, 4 sizes, smooth transitions | ✅ | ✅ |
169
- | **FloatingActionButton** | Modern FAB with 9 variants, 4 sizes, positions, extended mode | ✅ | ✅ |
188
+ | **Popover** | Rich content popover with 11 variants, 12 positions, 4 triggers | ✅ | ✅ |
189
+ | **Progress** | Progress bar with 9 variants, 5 sizes, animations, striped | ✅ | ✅ |
170
190
  | **Radio** | Radio button with 7 variants, 3 sizes, RadioGroup, descriptions | ✅ | ✅ |
171
- | **Switch** | Toggle switch with 7 variants, 3 sizes, icons, loading state | ✅ | ✅ |
172
- | **Checkbox** | Checkbox with 7 variants, 3 sizes, indeterminate, card mode, icons | ✅ | ✅ |
173
- | **CheckboxGroup** | Grouped checkboxes with layouts, validation, card grid, custom children | ✅ | ✅ |
191
+ | **Rating** | Star rating with 6 variants, 4 sizes, multiple icons, half stars | ✅ | ✅ |
192
+ | **Resizable** | Resizable panels with drag handles and constraints | ✅ | ✅ |
193
+ | **ScrollArea** | Custom scrollbar with smooth scrolling and styling | ✅ | ✅ |
174
194
  | **Select** | Advanced dropdown with search, multi-select, icons, avatars, grouping | ✅ | ✅ |
175
- | **Dropdown** | Advanced menu with nested items, keyboard nav, search, shortcuts, badges | ✅ | ✅ |
195
+ | **Separator** | Content separator with 5 variants and label support | ✅ | ✅ |
196
+ | **Skeleton** | Loading placeholder with 5 variants, 4 shapes, customizable animations | ✅ | ✅ |
197
+ | **Slider** | Range slider with single/dual handles and custom marks | ✅ | ✅ |
198
+ | **Sonner** | Toast notifications with rich content and animations | ✅ | ✅ |
199
+ | **Spinner** | Loading spinner with 10 variants, 6 sizes, 4 animations, fullscreen mode | ✅ | ✅ |
200
+ | **Steps** | Progress indicator with 4 variants, horizontal/vertical layouts | ✅ | ✅ |
201
+ | **Switch** | Toggle switch with 7 variants, 3 sizes, icons, loading state | ✅ | ✅ |
202
+ | **Tab** | Tab navigation with 14 variants, 3 sizes, icons, badges, disabled states | ✅ | ✅ |
203
+ | **Table** | Data table with sorting, selection, 5 variants, and responsive | ✅ | ✅ |
176
204
  | **Tag** | Labels with 11 variants, removable, badges, dots, avatars, animations | ✅ | ✅ |
177
205
  | **TagInput** | Dynamic tag input with validation, Enter/Comma keys, paste support | ✅ | ✅ |
178
206
  | **TextArea** | Multi-line text input with auto-resize, character count, validation | ✅ | ✅ |
179
- | **Upload** | File upload with drag & drop, preview, progress, validation, 4 types | ✅ | ✅ |
180
- | **Modal** | Dialog with 9 variants, 7 sizes, animations, focus trap, accessibility | ✅ | ✅ |
207
+ | **TextEditor** | Rich text editor with WYSIWYG formatting and toolbar | ✅ | ✅ |
208
+ | **ThemeProvider** | Theme context provider with dark mode and color management | ✅ | ✅ |
209
+ | **ThemeToggle** | Theme switcher button with smooth transitions | ✅ | ✅ |
210
+ | **Timeline** | Chronological events with 4 variants, positions, and statuses | ✅ | ✅ |
181
211
  | **Toast** | Notification toasts with 4 variants, 6 positions, 4 animations, actions | ✅ | ✅ |
182
- | **Empty** | Empty states with 4 variants, 4 sizes, 13 preset icons, animations | ✅ | ✅ |
183
- | **Autocomplete** | Search input with filtering, keyboard nav, grouping, async, composable | ✅ | ✅ |
184
- | **Skeleton** | Loading placeholder with 5 variants, 4 shapes, customizable animations | ✅ | ✅ |
185
- | **Spinner** | Loading spinner with 10 variants, 6 sizes, 4 animations, fullscreen mode | ✅ | ✅ |
186
- | **Pagination** | Page navigation with 5 variants, 3 sizes, ellipsis, customizable labels | ✅ | ✅ |
187
- | **DatePicker** | Calendar date picker with 5 variants, 3 sizes, date restrictions | ✅ | ✅ |
188
- | **Tab** | Tab navigation with 14 variants, 3 sizes, icons, badges, disabled states | ✅ | ✅ |
189
- | **Input** | Text input with 10 variants, 4 sizes, icons, validation, all input types | ✅ | ✅ |
212
+ | **Toggle** | Toggle button with pressed state and variants | ✅ | ✅ |
213
+ | **ToggleGroup** | Grouped toggle buttons with single/multiple selection | ✅ | ✅ |
214
+ | **Tooltip** | Contextual hints with 9 variants, 4 triggers, and interactive mode | ✅ | ✅ |
215
+ | **Tree** | Hierarchical data with 4 variants, icons, and expand/collapse | ✅ | ✅ |
216
+ | **Typography** | Text components with semantic variants and styling | ✅ | ✅ |
217
+ | **Upload** | File upload with drag & drop, preview, progress, validation, 4 types | ✅ | ✅ |
190
218
 
191
219
  ---
192
220
 
193
221
  ## ⚡ Quick Examples
194
222
 
195
- Here are simple examples for all 32 components to get you started quickly:
223
+ Here are simple examples for all components to get you started quickly:
196
224
 
197
225
  ### Button
198
226
 
@@ -307,15 +335,15 @@ import { Chip } from "saha-ui";
307
335
  </Chip>
308
336
  ```
309
337
 
310
- ### Divider
338
+ ### Separator
311
339
 
312
340
  ```tsx
313
- import { Divider } from "saha-ui";
341
+ import { Separator } from "saha-ui";
314
342
 
315
- <Divider />
316
- <Divider label="OR" />
317
- <Divider variant="gradient" thickness="medium" />
318
- <Divider orientation="vertical" className="h-24" />
343
+ <Separator />
344
+ <Separator label="OR" />
345
+ <Separator variant="gradient" thickness="medium" />
346
+ <Separator orientation="vertical" className="h-24" />
319
347
  ```
320
348
 
321
349
  ### Accordion
@@ -1231,7 +1259,7 @@ import { ButtonGroup, Button } from "saha-ui";
1231
1259
  **Contextual Usage:**
1232
1260
 
1233
1261
  ```tsx
1234
- // In modal footer
1262
+ // In dialog footer
1235
1263
  <Card>
1236
1264
  <CardHeader>
1237
1265
  <CardTitle>Confirm Action</CardTitle>
@@ -1805,7 +1833,7 @@ const customChipClass = chipVariants({
1805
1833
 
1806
1834
  ---
1807
1835
 
1808
- ### Divider
1836
+ ### Separator
1809
1837
 
1810
1838
  Content separator component with 5 modern variants, optional labels, and decorative elements.
1811
1839
 
@@ -1815,35 +1843,35 @@ Content separator component with 5 modern variants, optional labels, and decorat
1815
1843
  **Spacing:** `none` `xs` `sm` `md` `lg` `xl`
1816
1844
 
1817
1845
  ```tsx
1818
- import { Divider } from "saha-ui";
1846
+ import { Separator } from "saha-ui";
1819
1847
 
1820
- // Basic divider
1821
- <Divider />
1848
+ // Basic Separator
1849
+ <Separator />
1822
1850
 
1823
1851
  // With label
1824
- <Divider label="OR" />
1852
+ <Separator label="OR" />
1825
1853
 
1826
1854
  // Gradient variant
1827
- <Divider variant="gradient" thickness="medium" />
1855
+ <Separator variant="gradient" thickness="medium" />
1828
1856
 
1829
- // Vertical divider
1857
+ // Vertical Separator
1830
1858
  <div className="flex items-center h-24">
1831
1859
  <div>Section 1</div>
1832
- <Divider orientation="vertical" className="h-full" />
1860
+ <Separator orientation="vertical" className="h-full" />
1833
1861
  <div>Section 2</div>
1834
1862
  </div>
1835
1863
 
1836
1864
  // Decorative with label
1837
- <Divider label="Continue Reading" decorative />
1865
+ <Separator label="Continue Reading" decorative />
1838
1866
 
1839
1867
  // Custom positioning
1840
- <Divider label="Section Start" labelPosition="left" variant="dashed" />
1868
+ <Separator label="Section Start" labelPosition="left" variant="dashed" />
1841
1869
 
1842
1870
  // Different thickness
1843
- <Divider thickness="thick" variant="solid" />
1871
+ <Separator thickness="thick" variant="solid" />
1844
1872
 
1845
1873
  // Custom spacing
1846
- <Divider spacing="xl" variant="gradient" />
1874
+ <Separator spacing="xl" variant="gradient" />
1847
1875
  ```
1848
1876
 
1849
1877
  **Features:**
@@ -1870,7 +1898,7 @@ import { Divider } from "saha-ui";
1870
1898
  **Props:**
1871
1899
 
1872
1900
  ```tsx
1873
- interface DividerProps {
1901
+ interface SeparatorProps {
1874
1902
  variant?: "solid" | "dashed" | "dotted" | "gradient" | "glass";
1875
1903
  orientation?: "horizontal" | "vertical";
1876
1904
  thickness?: "thin" | "medium" | "thick";
@@ -1892,7 +1920,7 @@ interface DividerProps {
1892
1920
  Sign in with Email
1893
1921
  </Button>
1894
1922
 
1895
- <Divider label="OR" variant="gradient" spacing="sm" />
1923
+ <Separator label="OR" variant="gradient" spacing="sm" />
1896
1924
 
1897
1925
  <Button variant="outline" className="w-full">
1898
1926
  Continue with GitHub
@@ -1904,7 +1932,7 @@ interface DividerProps {
1904
1932
  <article>
1905
1933
  <p>Introduction paragraph...</p>
1906
1934
 
1907
- <Divider
1935
+ <Separator
1908
1936
  label="Section 1"
1909
1937
  labelPosition="left"
1910
1938
  variant="dashed"
@@ -1913,7 +1941,7 @@ interface DividerProps {
1913
1941
 
1914
1942
  <p>Main content...</p>
1915
1943
 
1916
- <Divider
1944
+ <Separator
1917
1945
  label="Conclusion"
1918
1946
  labelPosition="left"
1919
1947
  variant="dashed"
@@ -1922,13 +1950,13 @@ interface DividerProps {
1922
1950
 
1923
1951
  <p>Summary...</p>
1924
1952
 
1925
- <Divider decorative spacing="lg" variant="gradient" />
1953
+ <Separator decorative spacing="lg" variant="gradient" />
1926
1954
  </article>
1927
1955
 
1928
1956
  // Vertical layout sections
1929
1957
  <div className="flex h-64">
1930
1958
  <div className="flex-1">Left Panel</div>
1931
- <Divider
1959
+ <Separator
1932
1960
  orientation="vertical"
1933
1961
  variant="gradient"
1934
1962
  className="h-full"
@@ -1939,9 +1967,9 @@ interface DividerProps {
1939
1967
  // Dashboard sections
1940
1968
  <div className="flex gap-4 h-48">
1941
1969
  <Card className="flex-1">Stats 1</Card>
1942
- <Divider orientation="vertical" variant="glass" className="h-full" />
1970
+ <Separator orientation="vertical" variant="glass" className="h-full" />
1943
1971
  <Card className="flex-1">Stats 2</Card>
1944
- <Divider orientation="vertical" variant="glass" className="h-full" />
1972
+ <Separator orientation="vertical" variant="glass" className="h-full" />
1945
1973
  <Card className="flex-1">Stats 3</Card>
1946
1974
  </div>
1947
1975
  ```
@@ -1950,24 +1978,24 @@ interface DividerProps {
1950
1978
 
1951
1979
  ```tsx
1952
1980
  import {
1953
- dividerVariants,
1954
- dividerLineVariants,
1955
- dividerLabelVariants,
1981
+ SeparatorVariants,
1982
+ SeparatorLineVariants,
1983
+ SeparatorLabelVariants,
1956
1984
  } from "saha-ui";
1957
1985
 
1958
1986
  // Use exported variants for custom styling
1959
- const customContainerClass = dividerVariants({
1987
+ const customContainerClass = SeparatorVariants({
1960
1988
  orientation: "horizontal",
1961
1989
  spacing: "lg",
1962
1990
  });
1963
1991
 
1964
- const customLineClass = dividerLineVariants({
1992
+ const customLineClass = SeparatorLineVariants({
1965
1993
  variant: "gradient",
1966
1994
  orientation: "horizontal",
1967
1995
  thickness: "medium",
1968
1996
  });
1969
1997
 
1970
- const customLabelClass = dividerLabelVariants({
1998
+ const customLabelClass = SeparatorLabelVariants({
1971
1999
  orientation: "horizontal",
1972
2000
  });
1973
2001
  ```
@@ -2484,7 +2512,7 @@ import { CheckCircle, Star, Zap, Heart } from 'lucide-react';
2484
2512
 
2485
2513
  - **default** - Clean, minimal design with standard list styling
2486
2514
  - **bordered** - Card background with border, shadow, and backdrop blur (20px)
2487
- - **divided** - Items separated by divider lines, subtle hover effects
2515
+ - **divided** - Items separated by Separator lines, subtle hover effects
2488
2516
  - **striped** - Alternating background colors for better readability
2489
2517
  - **cards** - Individual card-style items with gradient overlay on hover
2490
2518
 
package/bin/cli.js ADDED
@@ -0,0 +1,19 @@
1
+ #!/usr/bin/env node
2
+ /* eslint-disable no-console */
3
+ import fs from "node:fs"; import path from "node:path"; const R = process.cwd(), a = process.argv.slice(2), c = a[ 0 ] || "init"; const rd = f => fs.readFileSync(f, "utf8"), wr = (f, s) => { fs.mkdirSync(path.dirname(f), { recursive: !0 }); fs.writeFileSync(f, s, "utf8") }, fE = f => fs.existsSync(f) && fs.statSync(f).isFile(), dE = d => fs.existsSync(d) && fs.statSync(d).isDirectory(); const P = (() => { try { return JSON.parse(rd(path.join(R, "package.json"))) } catch { return {} } })(), D = { ...(P.dependencies || {}), ...(P.devDependencies || {}) }, F = D.next ? "next" : "react"; const N = [ "app/globals.css", "app/global.css", "styles/globals.css", "styles/global.css", "src/app/globals.css", "src/app/global.css", "src/styles/globals.css", "src/styles/global.css" ], V = [ "src/index.css", "src/main.css", "src/global.css", "index.css" ], C = F === "next" ? N : V; const pick = () => { for (const x of C) { const f = path.join(R, x); if (fE(f)) return f } if (F === "next") { const A = dE(path.join(R, "app")) && path.join(R, "app/globals.css"), B = dE(path.join(R, "src/app")) && path.join(R, "src/app/globals.css"), S = dE(path.join(R, "styles")) && path.join(R, "styles/globals.css"), T = dE(path.join(R, "src/styles")) && path.join(R, "src/styles/globals.css"); return A || B || S || T || path.join(R, "app/globals.css") } return dE(path.join(R, "src")) ? path.join(R, "src/index.css") : path.join(R, "index.css") }; const M = "/*saha-ui*/", TW = /@import\s+["']tailwindcss["'];?/; const SRC = `@import "tailwindcss";
4
+ @custom-variant dark (&:is(.dark *));@theme inline{--radius-sm:calc(var(--radius) - 4px);--radius-md:calc(var(--radius) - 2px);--radius-lg:var(--radius);--radius-xl:calc(var(--radius) + 4px);--color-background:var(--background);--color-foreground:var(--foreground);--color-card:var(--card);--color-card-foreground:var(--card-foreground);--color-popover:var(--popover);--color-popover-foreground:var(--popover-foreground);--color-primary:var(--primary);--color-primary-foreground:var(--primary-foreground);--color-secondary:var(--secondary);--color-secondary-foreground:var(--secondary-foreground);--color-muted:var(--muted);--color-muted-foreground:var(--muted-foreground);--color-accent:var(--accent);--color-accent-foreground:var(--accent-foreground);--color-destructive:var(--destructive);--color-destructive-foreground:var(--destructive-foreground);--color-border:var(--border);--color-input:var(--input);--color-ring:var(--ring);--color-chart-1:var(--chart-1);--color-chart-2:var(--chart-2);--color-chart-3:var(--chart-3);--color-chart-4:var(--chart-4);--color-chart-5:var(--chart-5);--color-success:var(--success);--color-success-foreground:var(--success-foreground);--color-warning:var(--warning);--color-warning-foreground:var(--warning-foreground);--color-error:var(--error);--color-error-foreground:var(--error-foreground);--color-info:var(--info);--color-info-foreground:var(--info-foreground)}
5
+ :root{--radius:.625rem;--background:oklch(.98 .003 200);--foreground:oklch(.15 .01 200);--card:oklch(1 0 0);--card-foreground:oklch(.15 .01 200);--popover:oklch(1 0 0);--popover-foreground:oklch(.15 .01 200);--primary:oklch(48.151% .23085 269.463);--primary-foreground:oklch(1 0 0);--secondary:oklch(.65 .25 340);--secondary-foreground:oklch(1 0 0);--muted:oklch(.96 .005 200);--muted-foreground:oklch(.45 .01 200);--accent:oklch(.65 .12 185);--accent-foreground:oklch(1 0 0);--success:oklch(.60 .15 145);--success-foreground:oklch(1 0 0);--warning:oklch(.70 .15 65);--warning-foreground:oklch(.15 .01 200);--error:oklch(.60 .20 25);--error-foreground:oklch(1 0 0);--destructive:oklch(.60 .20 25);--destructive-foreground:oklch(1 0 0);--info:oklch(.60 .15 250);--info-foreground:oklch(1 0 0);--border:oklch(.92 .005 200);--input:oklch(.96 .005 200);--ring:oklch(.60 .18 275);--chart-1:oklch(.60 .18 275);--chart-2:oklch(.60 .15 145);--chart-3:oklch(.60 .15 250);--chart-4:oklch(.65 .25 340);--chart-5:oklch(.65 .12 185);--glass-bg:oklch(1 0 0 / .25);--glass-bg-hover:oklch(1 0 0 / .35);--glass-border:oklch(.60 .18 275 / .15);--glass-shadow:0 8px 32px 0 oklch(.60 .18 275 / .12);--glass-blur:16px}
6
+ .dark{--background:oklch(.08 .005 200);--foreground:oklch(.95 .005 200);--card:oklch(.12 .01 200);--card-foreground:oklch(.95 .005 200);--popover:oklch(.12 .01 200);--popover-foreground:oklch(.95 .005 200);--primary:oklch(41.145% .14945 272.396);--primary-foreground:oklch(.98 .003 200);--secondary:oklch(.70 .25 340);--secondary-foreground:oklch(.98 .003 200);--muted:oklch(.15 .01 200);--muted-foreground:oklch(.65 .005 200);--accent:oklch(.70 .15 185);--accent-foreground:oklch(.98 .003 200);--success:oklch(.65 .18 145);--success-foreground:oklch(.98 .003 200);--warning:oklch(.75 .18 65);--warning-foreground:oklch(.98 .003 200);--error:oklch(.65 .22 25);--error-foreground:oklch(.98 .003 200);--destructive:oklch(.65 .22 25);--destructive-foreground:oklch(.98 .003 200);--info:oklch(.65 .18 250);--info-foreground:oklch(.98 .003 200);--border:oklch(.20 .01 200);--input:oklch(.15 .01 200);--ring:oklch(.68 .20 275);--chart-1:oklch(.68 .20 275);--chart-2:oklch(.65 .18 145);--chart-3:oklch(.65 .18 250);--chart-4:oklch(.70 .25 340);--chart-5:oklch(.70 .15 185);--glass-bg:oklch(.12 .01 200 / .5);--glass-bg-hover:oklch(.12 .01 200 / .7);--glass-border:oklch(.68 .20 275 / .2);--glass-shadow:0 8px 32px 0 oklch(0 0 0 / .6);--glass-blur:16px}
7
+ @layer base{*{@apply border-border outline-ring/50}body{@apply bg-background text-foreground;background:linear-gradient(135deg,oklch(.98 .003 200) 0%,oklch(.96 .02 270) 50%,oklch(.98 .02 340) 100%);background-attachment:fixed;font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell','Fira Sans','Droid Sans','Helvetica Neue',sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dark body{@apply text-foreground;color:oklch(.95 .005 200);background:linear-gradient(135deg,oklch(.08 .005 200) 0%,oklch(.10 .01 200) 50%,oklch(.12 .01 200) 100%);background-attachment:fixed}.dark{color-scheme:dark}}
8
+ @layer components{.glass{background:var(--glass-bg);backdrop-filter:blur(var(--glass-blur)) saturate(180%);-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(180%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow);position:relative}.glass::before{content:'';position:absolute;inset:0;border-radius:inherit;padding:1px;background:linear-gradient(135deg,oklch(1 0 0 / .4) 0%,oklch(1 0 0 / .1) 50%,oklch(1 0 0 / 0) 100%);-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask-composite:exclude;pointer-events:none}.dark .glass::before{background:linear-gradient(135deg,oklch(.68 .20 275 / .3) 0%,oklch(.68 .20 275 / .1) 50%,oklch(.68 .20 275 / 0) 100%)}.glass-hover:hover{background:var(--glass-bg-hover);transform:translateY(-2px);box-shadow:0 12px 48px 0 oklch(.60 .18 275 / .2)}.dark .glass-hover:hover{box-shadow:0 12px 48px 0 oklch(0 0 0 / .7)}.glass-strong{background:var(--glass-bg);backdrop-filter:blur(24px) saturate(200%);-webkit-backdrop-filter:blur(24px) saturate(200%);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow),inset 0 1px 0 oklch(1 0 0 / .3)}.dark .glass-strong{box-shadow:var(--glass-shadow),inset 0 1px 0 oklch(.68 .20 275 / .2)}.glass-subtle{background:var(--glass-bg);backdrop-filter:blur(8px) saturate(150%);-webkit-backdrop-filter:blur(8px) saturate(150%);border:1px solid var(--glass-border);box-shadow:0 1px 2px 0 oklch(0 0 0 / .05)}}
9
+ @layer base{*{border-color:var(--border)}body{background:linear-gradient(135deg,#f8fafc 0%,#e0e7ff 50%,#fce7f3 100%);background-attachment:fixed;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,'Segoe UI','Roboto','Oxygen','Ubuntu','Cantarell','Fira Sans','Droid Sans','Helvetica Neue',sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.dark body{background:linear-gradient(135deg,#0a0a0a 0%,#171717 50%,#1a1a1a 100%);background-attachment:fixed}*{transition-property:background-color,border-color,color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:150ms}}
10
+ @layer utilities{@keyframes progress-stripes{0%{background-position:0 0}100%{background-position:1.5rem 0}}@keyframes progress-indeterminate{0%{left:-40%;transform:scaleX(.6)}50%{transform:scaleX(1)}100%{left:100%;transform:scaleX(.6)}}@keyframes progress-shimmer{0%{transform:translateX(-100%) scaleX(0);opacity:0}10%{opacity:1}50%{transform:translateX(0%) scaleX(1)}90%{opacity:1}100%{transform:translateX(100%) scaleX(0);opacity:0}}@keyframes progress-glow-pulse{0%,100%{filter:brightness(1) saturate(1)}50%{filter:brightness(1.15) saturate(1.2)}}}
11
+ @keyframes collapsible-down{from{height:0;opacity:0}to{height:var(--radix-collapsible-content-height);opacity:1}}
12
+ @keyframes collapsible-up{from{height:var(--radix-collapsible-content-height);opacity:1}to{height:0;opacity:0}}
13
+ .scrollbar-none{-ms-overflow-style:none;scrollbar-width:none}
14
+ .scrollbar-none::-webkit-scrollbar{display:none}
15
+ [role="menu"],[role="listbox"]{-ms-overflow-style:none;scrollbar-width:none}
16
+ [role="menu"]::-webkit-scrollbar,[role="listbox"]::-webkit-scrollbar{display:none}
17
+ [contenteditable][data-placeholder]:empty:before{content:attr(data-placeholder);color:hsl(var(--muted-foreground));opacity:.5;pointer-events:none}
18
+ [contenteditable]:focus:empty:before{content:attr(data-placeholder);color:hsl(var(--muted-foreground));opacity:.3}
19
+ `; const CSS = SRC.trim(), CSS_NO = CSS.replace(/^@import\s+["']tailwindcss["'];?/, "").trim(); const inject = f => { const ex = fE(f), cur = ex ? rd(f) : ""; if (cur.includes(M)) return console.log(`saha-ui: CSS already injected in ${path.relative(R, f)}`); const out = TW.test(cur) ? cur.replace(TW, m => `${m}\n${M}\n${CSS_NO}`) : `${M}\n${CSS}\n${cur}`; wr(f, out); console.log(`saha-ui: Injected CSS into ${path.relative(R, f)} (${F})`); if (!ex) { F === "next" ? console.log("saha-ui: Ensure root layout imports this CSS (app/layout.tsx -> import './globals.css')") : console.log("saha-ui: Ensure src/main.tsx imports './index.css'") } }; const run = () => c === "init" ? inject(pick()) : console.log("Usage: npx saha-ui init"); run();
@@ -0,0 +1,14 @@
1
+ export declare const accordionVariants: (props?: ({
2
+ variant?: "toggle" | "default" | "controlled" | "allopen" | "firstopen" | "glass" | null | undefined;
3
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
4
+ export declare const accordionItemVariants: (props?: ({
5
+ isOpen?: boolean | null | undefined;
6
+ disabled?: boolean | null | undefined;
7
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
8
+ export declare const accordionHeaderVariants: (props?: ({
9
+ isOpen?: boolean | null | undefined;
10
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
11
+ export declare const accordionContentVariants: (props?: ({
12
+ isOpen?: boolean | null | undefined;
13
+ } & import('class-variance-authority/types').ClassProp) | undefined) => string;
14
+ //# sourceMappingURL=Accordion.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Accordion.styles.d.ts","sourceRoot":"","sources":["../../../src/components/Accordion/Accordion.styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,iBAAiB;;8EAuB7B,CAAC;AAEF,eAAO,MAAM,qBAAqB;;;8EAkBjC,CAAC;AAEF,eAAO,MAAM,uBAAuB;;8EAcnC,CAAC;AAEF,eAAO,MAAM,wBAAwB;;8EAapC,CAAC"}
@@ -0,0 +1,69 @@
1
+ import { cva as e } from "class-variance-authority";
2
+ const o = e(
3
+ "w-full space-y-0 rounded-2xl overflow-hidden transition-all duration-300 relative isolate hover:shadow-2xl",
4
+ {
5
+ variants: {
6
+ variant: {
7
+ default: "border border-border/50 shadow-lg backdrop-blur-sm bg-card/30 hover:border-primary/30 before:absolute before:inset-0 before:bg-gradient-to-br before:from-primary/5 before:via-transparent before:to-accent/5 before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500",
8
+ controlled: "border border-border/50 shadow-lg backdrop-blur-sm bg-card/30 hover:border-primary/30 before:absolute before:inset-0 before:bg-gradient-to-br before:from-primary/5 before:via-transparent before:to-accent/5 before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500",
9
+ allopen: "border border-border/50 shadow-lg backdrop-blur-sm bg-card/30 hover:border-primary/30 before:absolute before:inset-0 before:bg-gradient-to-br before:from-primary/5 before:via-transparent before:to-accent/5 before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500",
10
+ toggle: "border border-border/50 shadow-lg backdrop-blur-sm bg-card/30 hover:border-primary/30 before:absolute before:inset-0 before:bg-gradient-to-br before:from-primary/5 before:via-transparent before:to-accent/5 before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500",
11
+ firstopen: "border border-border/50 shadow-lg backdrop-blur-sm bg-card/30 hover:border-primary/30 before:absolute before:inset-0 before:bg-gradient-to-br before:from-primary/5 before:via-transparent before:to-accent/5 before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500",
12
+ glass: "bg-background/30 backdrop-blur-xl border border-white/10 shadow-2xl hover:border-white/20 before:absolute before:inset-0 before:bg-gradient-to-br before:from-white/5 before:to-transparent before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-500"
13
+ }
14
+ },
15
+ defaultVariants: {
16
+ variant: "default"
17
+ }
18
+ }
19
+ ), a = e(
20
+ "group relative w-full overflow-hidden transition-all duration-300 ease-out border-b border-border/30 last:border-b-0 backdrop-blur-sm shadow-sm hover:shadow-lg transition-shadow isolate before:absolute before:inset-0 before:bg-gradient-to-r before:from-transparent before:via-primary/5 before:to-transparent before:opacity-0 hover:before:opacity-100 before:transition-opacity before:duration-300",
21
+ {
22
+ variants: {
23
+ isOpen: {
24
+ true: "bg-card/50 shadow-md before:opacity-100",
25
+ false: "bg-card/30 hover:bg-card/40"
26
+ },
27
+ disabled: {
28
+ true: "opacity-50 cursor-not-allowed pointer-events-none",
29
+ false: ""
30
+ }
31
+ },
32
+ defaultVariants: {
33
+ isOpen: !1,
34
+ disabled: !1
35
+ }
36
+ }
37
+ ), t = e(
38
+ "w-full flex justify-between items-center cursor-pointer transition-all duration-300 px-6 py-4 gap-4 relative isolate hover:scale-[1.01] active:scale-[0.99]",
39
+ {
40
+ variants: {
41
+ isOpen: {
42
+ true: "bg-gradient-to-r from-primary/5 via-secondary/5 to-accent/5 border-b border-border/50 shadow-sm before:absolute before:inset-0 before:bg-gradient-to-r before:from-primary/10 before:via-transparent before:to-accent/10 before:opacity-50",
43
+ false: "hover:bg-muted/30 after:absolute after:inset-0 after:bg-gradient-to-r after:from-transparent after:via-muted/20 after:to-transparent after:opacity-0 hover:after:opacity-100 after:transition-opacity after:duration-300"
44
+ }
45
+ },
46
+ defaultVariants: {
47
+ isOpen: !1
48
+ }
49
+ }
50
+ ), b = e(
51
+ "w-full px-6 overflow-hidden transition-all duration-500 ease-in-out bg-card/20",
52
+ {
53
+ variants: {
54
+ isOpen: {
55
+ true: "max-h-[500px] opacity-100 py-4",
56
+ false: "max-h-0 opacity-0 py-0"
57
+ }
58
+ },
59
+ defaultVariants: {
60
+ isOpen: !1
61
+ }
62
+ }
63
+ );
64
+ export {
65
+ b as accordionContentVariants,
66
+ t as accordionHeaderVariants,
67
+ a as accordionItemVariants,
68
+ o as accordionVariants
69
+ };
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Accordion/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA2D,MAAM,OAAO,CAAC;AAIhF,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAwH3B,eAAO,MAAM,SAAS,uFA2ErB,CAAC;AAIF,eAAO,MAAM,aAAa,2FAsBxB,CAAC;AAIH,eAAO,MAAM,gBAAgB,iGA6C3B,CAAC;AAIH,eAAO,MAAM,gBAAgB,8FAsB3B,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Accordion/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA+C,MAAM,OAAO,CAAC;AAGpE,OAAO,KAAK,EACV,cAAc,EACd,kBAAkB,EAClB,qBAAqB,EACrB,qBAAqB,EAEtB,MAAM,mBAAmB,CAAC;AAwD3B,eAAO,MAAM,SAAS,uFAiFrB,CAAC;AAIF,eAAO,MAAM,aAAa,2FAsBxB,CAAC;AAIH,eAAO,MAAM,gBAAgB,iGA6C3B,CAAC;AAIH,eAAO,MAAM,gBAAgB,8FAsB3B,CAAC"}