@mks2508/mks-ui 0.1.3 → 0.2.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 +123 -60
  2. package/dist/core/index.d.ts +7 -0
  3. package/dist/core/index.d.ts.map +1 -0
  4. package/dist/core/types.d.ts +79 -0
  5. package/dist/core/types.d.ts.map +1 -0
  6. package/dist/index.d.ts +19 -6
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +0 -56
  9. package/dist/react/components/MorphingPopover/MorphingPopover.types.d.ts +44 -0
  10. package/dist/react/components/MorphingPopover/MorphingPopover.types.d.ts.map +1 -0
  11. package/dist/react/components/MorphingPopover/index.d.ts +46 -0
  12. package/dist/react/components/MorphingPopover/index.d.ts.map +1 -0
  13. package/dist/{components/ui/morphing-popover/morphing-popover.js → react/components/MorphingPopover/index.js} +47 -7
  14. package/dist/react/components/MorphingPopover/morphing-popover.module.js +5 -0
  15. package/dist/react/components/index.d.ts +9 -0
  16. package/dist/react/components/index.d.ts.map +1 -0
  17. package/dist/react/components/index.js +1 -0
  18. package/dist/react/hooks/Animation/UseAutoHeight.d.ts +30 -0
  19. package/dist/react/hooks/Animation/UseAutoHeight.d.ts.map +1 -0
  20. package/dist/{hooks/use-auto-height.js → react/hooks/Animation/UseAutoHeight.js} +16 -2
  21. package/dist/react/hooks/DOM/UseIsInView.d.ts +32 -0
  22. package/dist/react/hooks/DOM/UseIsInView.d.ts.map +1 -0
  23. package/dist/react/hooks/DOM/UseIsInView.js +33 -0
  24. package/dist/react/hooks/State/UseControlledState.d.ts +31 -0
  25. package/dist/react/hooks/State/UseControlledState.d.ts.map +1 -0
  26. package/dist/react/hooks/State/UseControlledState.js +34 -0
  27. package/dist/react/hooks/State/UseDataState.d.ts +21 -0
  28. package/dist/react/hooks/State/UseDataState.d.ts.map +1 -0
  29. package/dist/react/hooks/State/UseDataState.js +63 -0
  30. package/dist/react/hooks/index.d.ts +14 -0
  31. package/dist/react/hooks/index.d.ts.map +1 -0
  32. package/dist/react/hooks/index.js +4 -0
  33. package/dist/react/icons/index.d.ts +8 -0
  34. package/dist/react/icons/index.d.ts.map +1 -0
  35. package/dist/react/icons/lucide-animated/activity.d.ts +11 -0
  36. package/dist/react/icons/lucide-animated/activity.d.ts.map +1 -0
  37. package/dist/{icons → react/icons}/lucide-animated/activity.js +2 -2
  38. package/dist/{icons → react/icons}/lucide-animated/arrow-down-to-line.d.ts +1 -1
  39. package/dist/react/icons/lucide-animated/arrow-down-to-line.d.ts.map +1 -0
  40. package/dist/{icons → react/icons}/lucide-animated/arrow-down-to-line.js +1 -1
  41. package/dist/{icons → react/icons}/lucide-animated/arrow-up.d.ts +1 -1
  42. package/dist/react/icons/lucide-animated/arrow-up.d.ts.map +1 -0
  43. package/dist/{icons → react/icons}/lucide-animated/arrow-up.js +1 -1
  44. package/dist/react/icons/lucide-animated/bell-electric.d.ts +11 -0
  45. package/dist/react/icons/lucide-animated/bell-electric.d.ts.map +1 -0
  46. package/dist/{icons → react/icons}/lucide-animated/bell-electric.js +2 -2
  47. package/dist/react/icons/lucide-animated/bell.d.ts +11 -0
  48. package/dist/react/icons/lucide-animated/bell.d.ts.map +1 -0
  49. package/dist/{icons → react/icons}/lucide-animated/bell.js +2 -2
  50. package/dist/react/icons/lucide-animated/bot.d.ts +11 -0
  51. package/dist/react/icons/lucide-animated/bot.d.ts.map +1 -0
  52. package/dist/{icons → react/icons}/lucide-animated/bot.js +2 -2
  53. package/dist/react/icons/lucide-animated/box.d.ts +11 -0
  54. package/dist/react/icons/lucide-animated/box.d.ts.map +1 -0
  55. package/dist/{icons → react/icons}/lucide-animated/box.js +2 -2
  56. package/dist/react/icons/lucide-animated/check.d.ts.map +1 -0
  57. package/dist/{icons → react/icons}/lucide-animated/check.js +1 -1
  58. package/dist/react/icons/lucide-animated/circle-check.d.ts +11 -0
  59. package/dist/react/icons/lucide-animated/circle-check.d.ts.map +1 -0
  60. package/dist/{icons → react/icons}/lucide-animated/circle-check.js +2 -2
  61. package/dist/react/icons/lucide-animated/delete.d.ts +11 -0
  62. package/dist/react/icons/lucide-animated/delete.d.ts.map +1 -0
  63. package/dist/{icons → react/icons}/lucide-animated/delete.js +2 -2
  64. package/dist/react/icons/lucide-animated/download.d.ts +11 -0
  65. package/dist/react/icons/lucide-animated/download.d.ts.map +1 -0
  66. package/dist/{icons → react/icons}/lucide-animated/download.js +2 -2
  67. package/dist/react/icons/lucide-animated/edit-2.d.ts.map +1 -0
  68. package/dist/{icons → react/icons}/lucide-animated/edit-2.js +1 -1
  69. package/dist/react/icons/lucide-animated/globe.d.ts.map +1 -0
  70. package/dist/{icons → react/icons}/lucide-animated/globe.js +1 -1
  71. package/dist/react/icons/lucide-animated/home.d.ts +11 -0
  72. package/dist/react/icons/lucide-animated/home.d.ts.map +1 -0
  73. package/dist/{icons → react/icons}/lucide-animated/home.js +2 -2
  74. package/dist/react/icons/lucide-animated/index.d.ts +38 -0
  75. package/dist/react/icons/lucide-animated/index.d.ts.map +1 -0
  76. package/dist/react/icons/lucide-animated/layers.d.ts.map +1 -0
  77. package/dist/{icons → react/icons}/lucide-animated/layers.js +1 -1
  78. package/dist/react/icons/lucide-animated/layout-panel-top.d.ts +11 -0
  79. package/dist/react/icons/lucide-animated/layout-panel-top.d.ts.map +1 -0
  80. package/dist/{icons → react/icons}/lucide-animated/layout-panel-top.js +2 -2
  81. package/dist/{icons → react/icons}/lucide-animated/list.d.ts +1 -1
  82. package/dist/react/icons/lucide-animated/list.d.ts.map +1 -0
  83. package/dist/{icons → react/icons}/lucide-animated/list.js +1 -1
  84. package/dist/react/icons/lucide-animated/package.d.ts.map +1 -0
  85. package/dist/{icons → react/icons}/lucide-animated/package.js +1 -1
  86. package/dist/react/icons/lucide-animated/palette.d.ts.map +1 -0
  87. package/dist/{icons → react/icons}/lucide-animated/palette.js +1 -1
  88. package/dist/react/icons/lucide-animated/plus.d.ts +11 -0
  89. package/dist/react/icons/lucide-animated/plus.d.ts.map +1 -0
  90. package/dist/{icons → react/icons}/lucide-animated/plus.js +2 -2
  91. package/dist/react/icons/lucide-animated/refresh-cw.d.ts.map +1 -0
  92. package/dist/{icons → react/icons}/lucide-animated/refresh-cw.js +1 -1
  93. package/dist/react/icons/lucide-animated/rocket.d.ts.map +1 -0
  94. package/dist/{icons → react/icons}/lucide-animated/rocket.js +1 -1
  95. package/dist/react/icons/lucide-animated/save.d.ts.map +1 -0
  96. package/dist/{icons → react/icons}/lucide-animated/save.js +1 -1
  97. package/dist/react/icons/lucide-animated/search.d.ts +11 -0
  98. package/dist/react/icons/lucide-animated/search.d.ts.map +1 -0
  99. package/dist/{icons → react/icons}/lucide-animated/search.js +2 -2
  100. package/dist/react/icons/lucide-animated/settings.d.ts +11 -0
  101. package/dist/react/icons/lucide-animated/settings.d.ts.map +1 -0
  102. package/dist/{icons → react/icons}/lucide-animated/settings.js +2 -2
  103. package/dist/{icons → react/icons}/lucide-animated/terminal.d.ts +1 -1
  104. package/dist/react/icons/lucide-animated/terminal.d.ts.map +1 -0
  105. package/dist/{icons → react/icons}/lucide-animated/terminal.js +1 -1
  106. package/dist/react/icons/lucide-animated/trash-2.d.ts.map +1 -0
  107. package/dist/{icons → react/icons}/lucide-animated/trash-2.js +1 -1
  108. package/dist/react/icons/lucide-animated/trending-down.d.ts +11 -0
  109. package/dist/react/icons/lucide-animated/trending-down.d.ts.map +1 -0
  110. package/dist/{icons → react/icons}/lucide-animated/trending-down.js +2 -2
  111. package/dist/react/icons/lucide-animated/trending-up.d.ts +11 -0
  112. package/dist/react/icons/lucide-animated/trending-up.d.ts.map +1 -0
  113. package/dist/{icons → react/icons}/lucide-animated/trending-up.js +2 -2
  114. package/dist/react/icons/lucide-animated/type.d.ts.map +1 -0
  115. package/dist/{icons → react/icons}/lucide-animated/type.js +1 -1
  116. package/dist/react/icons/lucide-animated/upload.d.ts.map +1 -0
  117. package/dist/{icons → react/icons}/lucide-animated/upload.js +1 -1
  118. package/dist/react/icons/lucide-animated/x.d.ts +11 -0
  119. package/dist/react/icons/lucide-animated/x.d.ts.map +1 -0
  120. package/dist/{icons → react/icons}/lucide-animated/x.js +2 -2
  121. package/dist/react/index.d.ts +19 -0
  122. package/dist/react/index.d.ts.map +1 -0
  123. package/dist/react/lib/get-strict-context.d.ts +30 -0
  124. package/dist/react/lib/get-strict-context.d.ts.map +1 -0
  125. package/dist/react/lib/get-strict-context.js +40 -0
  126. package/dist/react/lib/index.d.ts +8 -0
  127. package/dist/react/lib/index.d.ts.map +1 -0
  128. package/dist/react/lib/index.js +2 -0
  129. package/dist/{lib → react/lib}/utils.d.ts +2 -2
  130. package/dist/react/lib/utils.d.ts.map +1 -0
  131. package/dist/{lib → react/lib}/utils.js +3 -3
  132. package/dist/react/primitives/AutoHeight/index.d.ts +31 -0
  133. package/dist/react/primitives/AutoHeight/index.d.ts.map +1 -0
  134. package/dist/react/primitives/AutoHeight/index.js +52 -0
  135. package/dist/react/primitives/CountingNumber/index.d.ts +44 -0
  136. package/dist/react/primitives/CountingNumber/index.d.ts.map +1 -0
  137. package/dist/react/primitives/CountingNumber/index.js +97 -0
  138. package/dist/react/primitives/Highlight/Highlight.types.d.ts +113 -0
  139. package/dist/react/primitives/Highlight/Highlight.types.d.ts.map +1 -0
  140. package/dist/react/primitives/Highlight/index.d.ts +48 -0
  141. package/dist/react/primitives/Highlight/index.d.ts.map +1 -0
  142. package/dist/{components/animate-ui/primitives/effects/highlight.js → react/primitives/Highlight/index.js} +45 -5
  143. package/dist/react/primitives/Slot/index.d.ts +53 -0
  144. package/dist/react/primitives/Slot/index.d.ts.map +1 -0
  145. package/dist/{components/animate-ui/primitives/animate/slot.js → react/primitives/Slot/index.js} +27 -4
  146. package/dist/react/primitives/index.d.ts +12 -0
  147. package/dist/react/primitives/index.d.ts.map +1 -0
  148. package/dist/react/primitives/index.js +4 -0
  149. package/dist/react/ui/Accordion/Accordion.styles.d.ts +47 -0
  150. package/dist/react/ui/Accordion/Accordion.styles.d.ts.map +1 -0
  151. package/dist/react/ui/Accordion/Accordion.styles.js +54 -0
  152. package/dist/react/ui/Accordion/Accordion.types.d.ts +160 -0
  153. package/dist/react/ui/Accordion/Accordion.types.d.ts.map +1 -0
  154. package/dist/react/ui/Accordion/index.d.ts +105 -0
  155. package/dist/react/ui/Accordion/index.d.ts.map +1 -0
  156. package/dist/react/ui/Accordion/index.js +266 -0
  157. package/dist/react/ui/AlertDialog/AlertDialog.styles.d.ts +28 -0
  158. package/dist/react/ui/AlertDialog/AlertDialog.styles.d.ts.map +1 -0
  159. package/dist/react/ui/AlertDialog/AlertDialog.styles.js +29 -0
  160. package/dist/react/ui/AlertDialog/AlertDialog.types.d.ts +235 -0
  161. package/dist/react/ui/AlertDialog/AlertDialog.types.d.ts.map +1 -0
  162. package/dist/react/ui/AlertDialog/index.d.ts +194 -0
  163. package/dist/react/ui/AlertDialog/index.d.ts.map +1 -0
  164. package/dist/react/ui/AlertDialog/index.js +319 -0
  165. package/dist/react/ui/Badge/Badge.styles.d.ts +16 -0
  166. package/dist/react/ui/Badge/Badge.styles.d.ts.map +1 -0
  167. package/dist/{components/ui/badge/badge.styles.js → react/ui/Badge/Badge.styles.js} +2 -6
  168. package/dist/react/ui/Badge/Badge.types.d.ts +21 -0
  169. package/dist/react/ui/Badge/Badge.types.d.ts.map +1 -0
  170. package/dist/react/ui/Badge/index.d.ts +20 -0
  171. package/dist/react/ui/Badge/index.d.ts.map +1 -0
  172. package/dist/react/ui/Badge/index.js +34 -0
  173. package/dist/react/ui/Button/Button.styles.d.ts +21 -0
  174. package/dist/react/ui/Button/Button.styles.d.ts.map +1 -0
  175. package/dist/{components/ui/button/button.styles.js → react/ui/Button/Button.styles.js} +3 -9
  176. package/dist/react/ui/Button/Button.types.d.ts +45 -0
  177. package/dist/react/ui/Button/Button.types.d.ts.map +1 -0
  178. package/dist/react/ui/Button/index.d.ts +22 -0
  179. package/dist/react/ui/Button/index.d.ts.map +1 -0
  180. package/dist/react/ui/Button/index.js +103 -0
  181. package/dist/react/ui/Card/Card.styles.d.ts +11 -0
  182. package/dist/react/ui/Card/Card.styles.d.ts.map +1 -0
  183. package/dist/react/ui/Card/Card.styles.js +24 -0
  184. package/dist/react/ui/Card/Card.types.d.ts +22 -0
  185. package/dist/react/ui/Card/Card.types.d.ts.map +1 -0
  186. package/dist/react/ui/Card/index.d.ts +36 -0
  187. package/dist/react/ui/Card/index.d.ts.map +1 -0
  188. package/dist/react/ui/Card/index.js +82 -0
  189. package/dist/react/ui/Checkbox/Checkbox.styles.d.ts +25 -0
  190. package/dist/react/ui/Checkbox/Checkbox.styles.d.ts.map +1 -0
  191. package/dist/react/ui/Checkbox/Checkbox.styles.js +34 -0
  192. package/dist/react/ui/Checkbox/Checkbox.types.d.ts +88 -0
  193. package/dist/react/ui/Checkbox/Checkbox.types.d.ts.map +1 -0
  194. package/dist/react/ui/Checkbox/index.d.ts +59 -0
  195. package/dist/react/ui/Checkbox/index.d.ts.map +1 -0
  196. package/dist/react/ui/Checkbox/index.js +158 -0
  197. package/dist/react/ui/Combobox/Combobox.styles.d.ts +7 -0
  198. package/dist/react/ui/Combobox/Combobox.styles.d.ts.map +1 -0
  199. package/dist/react/ui/Combobox/Combobox.styles.js +17 -0
  200. package/dist/react/ui/Combobox/Combobox.types.d.ts +49 -0
  201. package/dist/react/ui/Combobox/Combobox.types.d.ts.map +1 -0
  202. package/dist/react/ui/Combobox/index.d.ts +60 -0
  203. package/dist/react/ui/Combobox/index.d.ts.map +1 -0
  204. package/dist/{components/ui/combobox.js → react/ui/Combobox/index.js} +54 -16
  205. package/dist/react/ui/CornerBracket/CornerBracket.styles.d.ts +18 -0
  206. package/dist/react/ui/CornerBracket/CornerBracket.styles.d.ts.map +1 -0
  207. package/dist/react/ui/CornerBracket/CornerBracket.styles.js +30 -0
  208. package/dist/react/ui/CornerBracket/CornerBracket.types.d.ts +12 -0
  209. package/dist/react/ui/CornerBracket/CornerBracket.types.d.ts.map +1 -0
  210. package/dist/react/ui/CornerBracket/index.d.ts +23 -0
  211. package/dist/react/ui/CornerBracket/index.d.ts.map +1 -0
  212. package/dist/react/ui/CornerBracket/index.js +42 -0
  213. package/dist/react/ui/Dialog/Dialog.styles.d.ts +24 -0
  214. package/dist/react/ui/Dialog/Dialog.styles.d.ts.map +1 -0
  215. package/dist/react/ui/Dialog/Dialog.styles.js +29 -0
  216. package/dist/react/ui/Dialog/Dialog.types.d.ts +221 -0
  217. package/dist/react/ui/Dialog/Dialog.types.d.ts.map +1 -0
  218. package/dist/react/ui/Dialog/index.d.ts +138 -0
  219. package/dist/react/ui/Dialog/index.d.ts.map +1 -0
  220. package/dist/react/ui/Dialog/index.js +265 -0
  221. package/dist/react/ui/DropdownMenu/DropdownMenu.styles.d.ts +7 -0
  222. package/dist/react/ui/DropdownMenu/DropdownMenu.styles.d.ts.map +1 -0
  223. package/dist/react/ui/DropdownMenu/DropdownMenu.styles.js +16 -0
  224. package/dist/react/ui/DropdownMenu/DropdownMenu.types.d.ts +50 -0
  225. package/dist/react/ui/DropdownMenu/DropdownMenu.types.d.ts.map +1 -0
  226. package/dist/react/ui/DropdownMenu/index.d.ts +50 -0
  227. package/dist/react/ui/DropdownMenu/index.d.ts.map +1 -0
  228. package/dist/{components/ui/dropdown-menu.js → react/ui/DropdownMenu/index.js} +44 -14
  229. package/dist/react/ui/Field/Field.styles.d.ts +11 -0
  230. package/dist/react/ui/Field/Field.styles.d.ts.map +1 -0
  231. package/dist/react/ui/Field/Field.styles.js +27 -0
  232. package/dist/react/ui/Field/Field.types.d.ts +39 -0
  233. package/dist/react/ui/Field/Field.types.d.ts.map +1 -0
  234. package/dist/react/ui/Field/index.d.ts +56 -0
  235. package/dist/react/ui/Field/index.d.ts.map +1 -0
  236. package/dist/{components/ui/field.js → react/ui/Field/index.js} +55 -23
  237. package/dist/react/ui/Input/Input.styles.d.ts +7 -0
  238. package/dist/react/ui/Input/Input.styles.d.ts.map +1 -0
  239. package/dist/react/ui/Input/Input.styles.js +5 -0
  240. package/dist/react/ui/Input/Input.types.d.ts +9 -0
  241. package/dist/react/ui/Input/Input.types.d.ts.map +1 -0
  242. package/dist/react/ui/Input/index.d.ts +17 -0
  243. package/dist/react/ui/Input/index.d.ts.map +1 -0
  244. package/dist/react/ui/Input/index.js +29 -0
  245. package/dist/react/ui/InputGroup/InputGroup.styles.d.ts +15 -0
  246. package/dist/react/ui/InputGroup/InputGroup.styles.d.ts.map +1 -0
  247. package/dist/react/ui/InputGroup/InputGroup.styles.js +34 -0
  248. package/dist/react/ui/InputGroup/InputGroup.types.d.ts +28 -0
  249. package/dist/react/ui/InputGroup/InputGroup.types.d.ts.map +1 -0
  250. package/dist/react/ui/InputGroup/index.d.ts +28 -0
  251. package/dist/react/ui/InputGroup/index.d.ts.map +1 -0
  252. package/dist/react/ui/InputGroup/index.js +81 -0
  253. package/dist/react/ui/Label/Label.styles.d.ts +6 -0
  254. package/dist/react/ui/Label/Label.styles.d.ts.map +1 -0
  255. package/dist/react/ui/Label/Label.styles.js +5 -0
  256. package/dist/react/ui/Label/Label.types.d.ts +8 -0
  257. package/dist/react/ui/Label/Label.types.d.ts.map +1 -0
  258. package/dist/react/ui/Label/index.d.ts +14 -0
  259. package/dist/react/ui/Label/index.d.ts.map +1 -0
  260. package/dist/react/ui/Label/index.js +24 -0
  261. package/dist/react/ui/Menu/Menu.styles.d.ts +42 -0
  262. package/dist/react/ui/Menu/Menu.styles.d.ts.map +1 -0
  263. package/dist/react/ui/Menu/Menu.styles.js +32 -0
  264. package/dist/react/ui/Menu/Menu.types.d.ts +328 -0
  265. package/dist/react/ui/Menu/Menu.types.d.ts.map +1 -0
  266. package/dist/react/ui/Menu/index.d.ts +354 -0
  267. package/dist/react/ui/Menu/index.d.ts.map +1 -0
  268. package/dist/react/ui/Menu/index.js +636 -0
  269. package/dist/react/ui/Popover/Popover.styles.d.ts +23 -0
  270. package/dist/react/ui/Popover/Popover.styles.d.ts.map +1 -0
  271. package/dist/react/ui/Popover/Popover.styles.js +26 -0
  272. package/dist/react/ui/Popover/Popover.types.d.ts +204 -0
  273. package/dist/react/ui/Popover/Popover.types.d.ts.map +1 -0
  274. package/dist/react/ui/Popover/index.d.ts +133 -0
  275. package/dist/react/ui/Popover/index.d.ts.map +1 -0
  276. package/dist/react/ui/Popover/index.js +237 -0
  277. package/dist/react/ui/Progress/Progress.styles.d.ts +28 -0
  278. package/dist/react/ui/Progress/Progress.styles.d.ts.map +1 -0
  279. package/dist/react/ui/Progress/Progress.styles.js +30 -0
  280. package/dist/react/ui/Progress/Progress.types.d.ts +148 -0
  281. package/dist/react/ui/Progress/Progress.types.d.ts.map +1 -0
  282. package/dist/react/ui/Progress/index.d.ts +111 -0
  283. package/dist/react/ui/Progress/index.d.ts.map +1 -0
  284. package/dist/react/ui/Progress/index.js +170 -0
  285. package/dist/react/ui/Select/Select.styles.d.ts +7 -0
  286. package/dist/react/ui/Select/Select.styles.d.ts.map +1 -0
  287. package/dist/react/ui/Select/Select.styles.js +15 -0
  288. package/dist/react/ui/Select/Select.types.d.ts +28 -0
  289. package/dist/react/ui/Select/Select.types.d.ts.map +1 -0
  290. package/dist/react/ui/Select/index.d.ts +38 -0
  291. package/dist/react/ui/Select/index.d.ts.map +1 -0
  292. package/dist/{components/ui/select.js → react/ui/Select/index.js} +35 -13
  293. package/dist/react/ui/Separator/Separator.styles.d.ts +6 -0
  294. package/dist/react/ui/Separator/Separator.styles.d.ts.map +1 -0
  295. package/dist/react/ui/Separator/Separator.styles.js +5 -0
  296. package/dist/react/ui/Separator/Separator.types.d.ts +9 -0
  297. package/dist/react/ui/Separator/Separator.types.d.ts.map +1 -0
  298. package/dist/react/ui/Separator/index.d.ts +16 -0
  299. package/dist/react/ui/Separator/index.d.ts.map +1 -0
  300. package/dist/react/ui/Separator/index.js +29 -0
  301. package/dist/react/ui/Switch/Switch.styles.d.ts +26 -0
  302. package/dist/react/ui/Switch/Switch.styles.d.ts.map +1 -0
  303. package/dist/react/ui/Switch/Switch.styles.js +41 -0
  304. package/dist/react/ui/Switch/Switch.types.d.ts +130 -0
  305. package/dist/react/ui/Switch/Switch.types.d.ts.map +1 -0
  306. package/dist/react/ui/Switch/index.d.ts +79 -0
  307. package/dist/react/ui/Switch/index.d.ts.map +1 -0
  308. package/dist/react/ui/Switch/index.js +199 -0
  309. package/dist/react/ui/Tabs/Tabs.styles.d.ts +43 -0
  310. package/dist/react/ui/Tabs/Tabs.styles.d.ts.map +1 -0
  311. package/dist/react/ui/Tabs/Tabs.styles.js +26 -0
  312. package/dist/react/ui/Tabs/Tabs.types.d.ts +201 -0
  313. package/dist/react/ui/Tabs/Tabs.types.d.ts.map +1 -0
  314. package/dist/react/ui/Tabs/index.d.ts +141 -0
  315. package/dist/react/ui/Tabs/index.d.ts.map +1 -0
  316. package/dist/react/ui/Tabs/index.js +308 -0
  317. package/dist/react/ui/Textarea/Textarea.styles.d.ts +6 -0
  318. package/dist/react/ui/Textarea/Textarea.styles.d.ts.map +1 -0
  319. package/dist/react/ui/Textarea/Textarea.styles.js +5 -0
  320. package/dist/react/ui/Textarea/Textarea.types.d.ts +8 -0
  321. package/dist/react/ui/Textarea/Textarea.types.d.ts.map +1 -0
  322. package/dist/react/ui/Textarea/index.d.ts +14 -0
  323. package/dist/react/ui/Textarea/index.d.ts.map +1 -0
  324. package/dist/react/ui/Textarea/index.js +24 -0
  325. package/dist/react/ui/Tooltip/Tooltip.styles.d.ts +23 -0
  326. package/dist/react/ui/Tooltip/Tooltip.styles.d.ts.map +1 -0
  327. package/dist/react/ui/Tooltip/Tooltip.styles.js +26 -0
  328. package/dist/react/ui/Tooltip/Tooltip.types.d.ts +203 -0
  329. package/dist/react/ui/Tooltip/Tooltip.types.d.ts.map +1 -0
  330. package/dist/react/ui/Tooltip/index.d.ts +110 -0
  331. package/dist/react/ui/Tooltip/index.d.ts.map +1 -0
  332. package/dist/react/ui/Tooltip/index.js +219 -0
  333. package/dist/react/ui/index.d.ts +31 -0
  334. package/dist/react/ui/index.d.ts.map +1 -0
  335. package/dist/react/ui/index.js +37 -0
  336. package/dist/react.js +88 -0
  337. package/package.json +12 -13
  338. package/src/core/index.ts +7 -0
  339. package/src/core/types.ts +82 -0
  340. package/src/index.ts +20 -11
  341. package/src/react/components/MorphingPopover/MorphingPopover.types.ts +49 -0
  342. package/src/react/components/MorphingPopover/index.tsx +186 -0
  343. package/src/react/components/index.ts +9 -0
  344. package/src/{hooks/use-auto-height.tsx → react/hooks/Animation/UseAutoHeight.tsx} +24 -3
  345. package/src/react/hooks/DOM/UseIsInView.tsx +44 -0
  346. package/src/{hooks/use-controlled-state.tsx → react/hooks/State/UseControlledState.tsx} +26 -2
  347. package/src/{hooks/use-data-state.tsx → react/hooks/State/UseDataState.tsx} +22 -0
  348. package/src/react/hooks/index.ts +17 -0
  349. package/src/react/icons/index.ts +12 -0
  350. package/src/{icons → react/icons}/lucide-animated/activity.tsx +1 -1
  351. package/src/{icons → react/icons}/lucide-animated/bell-electric.tsx +1 -1
  352. package/src/{icons → react/icons}/lucide-animated/bell.tsx +1 -1
  353. package/src/{icons → react/icons}/lucide-animated/bot.tsx +1 -1
  354. package/src/{icons → react/icons}/lucide-animated/box.tsx +1 -1
  355. package/src/{icons → react/icons}/lucide-animated/circle-check.tsx +1 -1
  356. package/src/{icons → react/icons}/lucide-animated/delete.tsx +1 -1
  357. package/src/{icons → react/icons}/lucide-animated/download.tsx +1 -1
  358. package/src/{icons → react/icons}/lucide-animated/home.tsx +1 -1
  359. package/src/react/icons/lucide-animated/index.ts +38 -0
  360. package/src/{icons → react/icons}/lucide-animated/layout-panel-top.tsx +1 -1
  361. package/src/{icons → react/icons}/lucide-animated/plus.tsx +1 -1
  362. package/src/{icons → react/icons}/lucide-animated/search.tsx +1 -1
  363. package/src/{icons → react/icons}/lucide-animated/settings.tsx +1 -1
  364. package/src/{icons → react/icons}/lucide-animated/trending-down.tsx +1 -1
  365. package/src/{icons → react/icons}/lucide-animated/trending-up.tsx +1 -1
  366. package/src/{icons → react/icons}/lucide-animated/x.tsx +1 -1
  367. package/src/react/index.ts +30 -0
  368. package/src/{lib → react/lib}/get-strict-context.tsx +20 -0
  369. package/src/react/lib/index.ts +8 -0
  370. package/src/{lib → react/lib}/utils.ts +2 -2
  371. package/src/{components/animate-ui/primitives/effects/auto-height.tsx → react/primitives/AutoHeight/index.tsx} +24 -5
  372. package/src/{components/animate-ui/primitives/texts/counting-number.tsx → react/primitives/CountingNumber/index.tsx} +35 -7
  373. package/src/react/primitives/Highlight/Highlight.types.ts +136 -0
  374. package/src/{components/animate-ui/primitives/effects/highlight.tsx → react/primitives/Highlight/index.tsx} +60 -123
  375. package/src/{components/animate-ui/primitives/animate/slot.tsx → react/primitives/Slot/index.tsx} +43 -11
  376. package/src/react/primitives/index.ts +13 -0
  377. package/src/react/ui/Accordion/Accordion.styles.ts +72 -0
  378. package/src/react/ui/Accordion/Accordion.types.ts +199 -0
  379. package/src/react/ui/Accordion/index.tsx +362 -0
  380. package/src/react/ui/AlertDialog/AlertDialog.styles.ts +38 -0
  381. package/src/react/ui/AlertDialog/AlertDialog.types.ts +296 -0
  382. package/src/react/ui/AlertDialog/index.tsx +540 -0
  383. package/src/react/ui/Badge/Badge.styles.ts +43 -0
  384. package/src/react/ui/Badge/Badge.types.ts +26 -0
  385. package/src/react/ui/Badge/index.tsx +34 -0
  386. package/src/react/ui/Button/Button.styles.ts +57 -0
  387. package/src/react/ui/Button/Button.types.ts +63 -0
  388. package/src/react/ui/Button/index.tsx +155 -0
  389. package/src/react/ui/Card/Card.styles.ts +32 -0
  390. package/src/react/ui/Card/Card.types.ts +39 -0
  391. package/src/react/ui/Card/index.tsx +130 -0
  392. package/src/react/ui/Checkbox/Checkbox.styles.ts +40 -0
  393. package/src/react/ui/Checkbox/Checkbox.types.ts +98 -0
  394. package/src/react/ui/Checkbox/index.tsx +233 -0
  395. package/src/react/ui/Combobox/Combobox.styles.ts +34 -0
  396. package/src/react/ui/Combobox/Combobox.types.ts +89 -0
  397. package/src/react/ui/Combobox/index.tsx +331 -0
  398. package/src/react/ui/CornerBracket/CornerBracket.styles.ts +38 -0
  399. package/src/react/ui/CornerBracket/CornerBracket.types.ts +15 -0
  400. package/src/react/ui/CornerBracket/index.tsx +49 -0
  401. package/src/react/ui/Dialog/Dialog.styles.ts +59 -0
  402. package/src/react/ui/Dialog/Dialog.types.ts +284 -0
  403. package/src/react/ui/Dialog/index.tsx +452 -0
  404. package/src/react/ui/DropdownMenu/DropdownMenu.styles.ts +35 -0
  405. package/src/react/ui/DropdownMenu/DropdownMenu.types.ts +81 -0
  406. package/src/react/ui/DropdownMenu/index.tsx +300 -0
  407. package/src/react/ui/Field/Field.styles.ts +47 -0
  408. package/src/react/ui/Field/Field.types.ts +60 -0
  409. package/src/react/ui/Field/index.tsx +254 -0
  410. package/src/{components/ui/input.tsx → react/ui/Input/Input.styles.ts} +8 -17
  411. package/src/react/ui/Input/Input.types.ts +10 -0
  412. package/src/react/ui/Input/index.tsx +32 -0
  413. package/src/react/ui/InputGroup/InputGroup.styles.ts +53 -0
  414. package/src/react/ui/InputGroup/InputGroup.types.ts +44 -0
  415. package/src/react/ui/InputGroup/index.tsx +147 -0
  416. package/src/react/ui/Label/Label.styles.ts +10 -0
  417. package/src/react/ui/Label/Label.types.ts +9 -0
  418. package/src/react/ui/Label/index.tsx +27 -0
  419. package/src/react/ui/Menu/Menu.styles.ts +71 -0
  420. package/src/react/ui/Menu/Menu.types.ts +425 -0
  421. package/src/react/ui/Menu/index.tsx +900 -0
  422. package/src/react/ui/Popover/Popover.styles.ts +55 -0
  423. package/src/react/ui/Popover/Popover.types.ts +261 -0
  424. package/src/react/ui/Popover/index.tsx +422 -0
  425. package/src/react/ui/Progress/Progress.styles.ts +36 -0
  426. package/src/react/ui/Progress/Progress.types.ts +162 -0
  427. package/src/react/ui/Progress/index.tsx +254 -0
  428. package/src/react/ui/Select/Select.styles.ts +30 -0
  429. package/src/react/ui/Select/Select.types.ts +51 -0
  430. package/src/react/ui/Select/index.tsx +225 -0
  431. package/src/react/ui/Separator/Separator.styles.ts +10 -0
  432. package/src/react/ui/Separator/Separator.types.ts +10 -0
  433. package/src/react/ui/Separator/index.tsx +37 -0
  434. package/src/react/ui/Switch/Switch.styles.ts +50 -0
  435. package/src/react/ui/Switch/Switch.types.ts +155 -0
  436. package/src/react/ui/Switch/index.tsx +253 -0
  437. package/src/react/ui/Tabs/Tabs.styles.ts +60 -0
  438. package/src/react/ui/Tabs/Tabs.types.ts +250 -0
  439. package/src/react/ui/Tabs/index.tsx +421 -0
  440. package/src/{components/ui/textarea.tsx → react/ui/Textarea/Textarea.styles.ts} +7 -15
  441. package/src/react/ui/Textarea/Textarea.types.ts +9 -0
  442. package/src/react/ui/Textarea/index.tsx +27 -0
  443. package/src/react/ui/Tooltip/Tooltip.styles.ts +43 -0
  444. package/src/react/ui/Tooltip/Tooltip.types.ts +253 -0
  445. package/src/react/ui/Tooltip/index.tsx +394 -0
  446. package/src/react/ui/index.ts +34 -0
  447. package/dist/components/animate-ui/primitives/animate/slot.d.ts +0 -18
  448. package/dist/components/animate-ui/primitives/animate/slot.d.ts.map +0 -1
  449. package/dist/components/animate-ui/primitives/base/accordion.d.ts +0 -22
  450. package/dist/components/animate-ui/primitives/base/accordion.d.ts.map +0 -1
  451. package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts +0 -33
  452. package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts.map +0 -1
  453. package/dist/components/animate-ui/primitives/base/checkbox.d.ts +0 -15
  454. package/dist/components/animate-ui/primitives/base/checkbox.d.ts.map +0 -1
  455. package/dist/components/animate-ui/primitives/base/dialog.d.ts +0 -33
  456. package/dist/components/animate-ui/primitives/base/dialog.d.ts.map +0 -1
  457. package/dist/components/animate-ui/primitives/base/menu.d.ts +0 -60
  458. package/dist/components/animate-ui/primitives/base/menu.d.ts.map +0 -1
  459. package/dist/components/animate-ui/primitives/base/popover.d.ts +0 -30
  460. package/dist/components/animate-ui/primitives/base/popover.d.ts.map +0 -1
  461. package/dist/components/animate-ui/primitives/base/progress.d.ts +0 -297
  462. package/dist/components/animate-ui/primitives/base/progress.d.ts.map +0 -1
  463. package/dist/components/animate-ui/primitives/base/switch.d.ts +0 -23
  464. package/dist/components/animate-ui/primitives/base/switch.d.ts.map +0 -1
  465. package/dist/components/animate-ui/primitives/base/switch.js +0 -90
  466. package/dist/components/animate-ui/primitives/base/tabs.d.ts +0 -33
  467. package/dist/components/animate-ui/primitives/base/tabs.d.ts.map +0 -1
  468. package/dist/components/animate-ui/primitives/base/tabs.js +0 -132
  469. package/dist/components/animate-ui/primitives/base/tooltip.d.ts +0 -31
  470. package/dist/components/animate-ui/primitives/base/tooltip.d.ts.map +0 -1
  471. package/dist/components/animate-ui/primitives/effects/auto-height.d.ts +0 -12
  472. package/dist/components/animate-ui/primitives/effects/auto-height.d.ts.map +0 -1
  473. package/dist/components/animate-ui/primitives/effects/auto-height.js +0 -37
  474. package/dist/components/animate-ui/primitives/effects/highlight.d.ts +0 -92
  475. package/dist/components/animate-ui/primitives/effects/highlight.d.ts.map +0 -1
  476. package/dist/components/animate-ui/primitives/texts/counting-number.d.ts +0 -16
  477. package/dist/components/animate-ui/primitives/texts/counting-number.d.ts.map +0 -1
  478. package/dist/components/ui/alert-dialog.d.ts +0 -21
  479. package/dist/components/ui/alert-dialog.d.ts.map +0 -1
  480. package/dist/components/ui/alert-dialog.js +0 -99
  481. package/dist/components/ui/badge/badge.d.ts +0 -37
  482. package/dist/components/ui/badge/badge.d.ts.map +0 -1
  483. package/dist/components/ui/badge/badge.js +0 -52
  484. package/dist/components/ui/badge/badge.styles.d.ts +0 -23
  485. package/dist/components/ui/badge/badge.styles.d.ts.map +0 -1
  486. package/dist/components/ui/badge/badge.types.d.ts +0 -38
  487. package/dist/components/ui/badge/badge.types.d.ts.map +0 -1
  488. package/dist/components/ui/badge/index.d.ts +0 -8
  489. package/dist/components/ui/badge/index.d.ts.map +0 -1
  490. package/dist/components/ui/badge/index.js +0 -2
  491. package/dist/components/ui/button/button.d.ts +0 -79
  492. package/dist/components/ui/button/button.d.ts.map +0 -1
  493. package/dist/components/ui/button/button.js +0 -161
  494. package/dist/components/ui/button/button.styles.d.ts +0 -33
  495. package/dist/components/ui/button/button.styles.d.ts.map +0 -1
  496. package/dist/components/ui/button/button.types.d.ts +0 -103
  497. package/dist/components/ui/button/button.types.d.ts.map +0 -1
  498. package/dist/components/ui/button/index.d.ts +0 -7
  499. package/dist/components/ui/button/index.d.ts.map +0 -1
  500. package/dist/components/ui/button/index.js +0 -2
  501. package/dist/components/ui/card.d.ts +0 -14
  502. package/dist/components/ui/card.d.ts.map +0 -1
  503. package/dist/components/ui/card.js +0 -67
  504. package/dist/components/ui/combobox.d.ts +0 -25
  505. package/dist/components/ui/combobox.d.ts.map +0 -1
  506. package/dist/components/ui/devenv-bracket.d.ts +0 -30
  507. package/dist/components/ui/devenv-bracket.d.ts.map +0 -1
  508. package/dist/components/ui/devenv-bracket.js +0 -66
  509. package/dist/components/ui/dropdown-menu.d.ts +0 -30
  510. package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
  511. package/dist/components/ui/field.d.ts +0 -25
  512. package/dist/components/ui/field.d.ts.map +0 -1
  513. package/dist/components/ui/index.d.ts +0 -25
  514. package/dist/components/ui/index.d.ts.map +0 -1
  515. package/dist/components/ui/index.js +0 -24
  516. package/dist/components/ui/input-group.d.ts +0 -19
  517. package/dist/components/ui/input-group.d.ts.map +0 -1
  518. package/dist/components/ui/input-group.js +0 -84
  519. package/dist/components/ui/input.d.ts +0 -4
  520. package/dist/components/ui/input.d.ts.map +0 -1
  521. package/dist/components/ui/input.js +0 -17
  522. package/dist/components/ui/label.d.ts +0 -4
  523. package/dist/components/ui/label.d.ts.map +0 -1
  524. package/dist/components/ui/label.js +0 -15
  525. package/dist/components/ui/morphing-popover/index.d.ts +0 -10
  526. package/dist/components/ui/morphing-popover/index.d.ts.map +0 -1
  527. package/dist/components/ui/morphing-popover/index.js +0 -1
  528. package/dist/components/ui/morphing-popover/morphing-popover.d.ts +0 -54
  529. package/dist/components/ui/morphing-popover/morphing-popover.d.ts.map +0 -1
  530. package/dist/components/ui/morphing-popover/morphing-popover.module.js +0 -5
  531. package/dist/components/ui/select.d.ts +0 -16
  532. package/dist/components/ui/select.d.ts.map +0 -1
  533. package/dist/components/ui/separator.d.ts +0 -4
  534. package/dist/components/ui/separator.d.ts.map +0 -1
  535. package/dist/components/ui/separator.js +0 -18
  536. package/dist/components/ui/switch.d.ts +0 -9
  537. package/dist/components/ui/switch.d.ts.map +0 -1
  538. package/dist/components/ui/switch.js +0 -1
  539. package/dist/components/ui/tabs.d.ts +0 -9
  540. package/dist/components/ui/tabs.d.ts.map +0 -1
  541. package/dist/components/ui/tabs.js +0 -1
  542. package/dist/components/ui/textarea.d.ts +0 -4
  543. package/dist/components/ui/textarea.d.ts.map +0 -1
  544. package/dist/components/ui/textarea.js +0 -15
  545. package/dist/hooks/use-auto-height.d.ts +0 -11
  546. package/dist/hooks/use-auto-height.d.ts.map +0 -1
  547. package/dist/hooks/use-controlled-state.d.ts +0 -9
  548. package/dist/hooks/use-controlled-state.d.ts.map +0 -1
  549. package/dist/hooks/use-controlled-state.js +0 -17
  550. package/dist/hooks/use-data-state.d.ts +0 -5
  551. package/dist/hooks/use-data-state.d.ts.map +0 -1
  552. package/dist/hooks/use-is-in-view.d.ts +0 -13
  553. package/dist/hooks/use-is-in-view.d.ts.map +0 -1
  554. package/dist/icons/index.d.ts +0 -8
  555. package/dist/icons/index.d.ts.map +0 -1
  556. package/dist/icons/lucide-animated/activity.d.ts +0 -11
  557. package/dist/icons/lucide-animated/activity.d.ts.map +0 -1
  558. package/dist/icons/lucide-animated/arrow-down-to-line.d.ts.map +0 -1
  559. package/dist/icons/lucide-animated/arrow-up.d.ts.map +0 -1
  560. package/dist/icons/lucide-animated/bell-electric.d.ts +0 -11
  561. package/dist/icons/lucide-animated/bell-electric.d.ts.map +0 -1
  562. package/dist/icons/lucide-animated/bell.d.ts +0 -11
  563. package/dist/icons/lucide-animated/bell.d.ts.map +0 -1
  564. package/dist/icons/lucide-animated/bot.d.ts +0 -11
  565. package/dist/icons/lucide-animated/bot.d.ts.map +0 -1
  566. package/dist/icons/lucide-animated/box.d.ts +0 -11
  567. package/dist/icons/lucide-animated/box.d.ts.map +0 -1
  568. package/dist/icons/lucide-animated/check.d.ts.map +0 -1
  569. package/dist/icons/lucide-animated/circle-check.d.ts +0 -11
  570. package/dist/icons/lucide-animated/circle-check.d.ts.map +0 -1
  571. package/dist/icons/lucide-animated/delete.d.ts +0 -11
  572. package/dist/icons/lucide-animated/delete.d.ts.map +0 -1
  573. package/dist/icons/lucide-animated/download.d.ts +0 -11
  574. package/dist/icons/lucide-animated/download.d.ts.map +0 -1
  575. package/dist/icons/lucide-animated/edit-2.d.ts.map +0 -1
  576. package/dist/icons/lucide-animated/globe.d.ts.map +0 -1
  577. package/dist/icons/lucide-animated/home.d.ts +0 -11
  578. package/dist/icons/lucide-animated/home.d.ts.map +0 -1
  579. package/dist/icons/lucide-animated/index.d.ts +0 -38
  580. package/dist/icons/lucide-animated/index.d.ts.map +0 -1
  581. package/dist/icons/lucide-animated/layers.d.ts.map +0 -1
  582. package/dist/icons/lucide-animated/layout-panel-top.d.ts +0 -11
  583. package/dist/icons/lucide-animated/layout-panel-top.d.ts.map +0 -1
  584. package/dist/icons/lucide-animated/list.d.ts.map +0 -1
  585. package/dist/icons/lucide-animated/package.d.ts.map +0 -1
  586. package/dist/icons/lucide-animated/palette.d.ts.map +0 -1
  587. package/dist/icons/lucide-animated/plus.d.ts +0 -11
  588. package/dist/icons/lucide-animated/plus.d.ts.map +0 -1
  589. package/dist/icons/lucide-animated/refresh-cw.d.ts.map +0 -1
  590. package/dist/icons/lucide-animated/rocket.d.ts.map +0 -1
  591. package/dist/icons/lucide-animated/save.d.ts.map +0 -1
  592. package/dist/icons/lucide-animated/search.d.ts +0 -11
  593. package/dist/icons/lucide-animated/search.d.ts.map +0 -1
  594. package/dist/icons/lucide-animated/settings.d.ts +0 -11
  595. package/dist/icons/lucide-animated/settings.d.ts.map +0 -1
  596. package/dist/icons/lucide-animated/terminal.d.ts.map +0 -1
  597. package/dist/icons/lucide-animated/trash-2.d.ts.map +0 -1
  598. package/dist/icons/lucide-animated/trending-down.d.ts +0 -11
  599. package/dist/icons/lucide-animated/trending-down.d.ts.map +0 -1
  600. package/dist/icons/lucide-animated/trending-up.d.ts +0 -11
  601. package/dist/icons/lucide-animated/trending-up.d.ts.map +0 -1
  602. package/dist/icons/lucide-animated/type.d.ts.map +0 -1
  603. package/dist/icons/lucide-animated/upload.d.ts.map +0 -1
  604. package/dist/icons/lucide-animated/x.d.ts +0 -11
  605. package/dist/icons/lucide-animated/x.d.ts.map +0 -1
  606. package/dist/lib/get-strict-context.d.ts +0 -10
  607. package/dist/lib/get-strict-context.d.ts.map +0 -1
  608. package/dist/lib/get-strict-context.js +0 -20
  609. package/dist/lib/utils.d.ts.map +0 -1
  610. package/src/components/animate-ui/primitives/base/accordion.tsx +0 -179
  611. package/src/components/animate-ui/primitives/base/alert-dialog.tsx +0 -218
  612. package/src/components/animate-ui/primitives/base/checkbox.tsx +0 -153
  613. package/src/components/animate-ui/primitives/base/dialog.tsx +0 -203
  614. package/src/components/animate-ui/primitives/base/menu.tsx +0 -463
  615. package/src/components/animate-ui/primitives/base/popover.tsx +0 -167
  616. package/src/components/animate-ui/primitives/base/progress.tsx +0 -103
  617. package/src/components/animate-ui/primitives/base/switch.tsx +0 -158
  618. package/src/components/animate-ui/primitives/base/tabs.tsx +0 -202
  619. package/src/components/animate-ui/primitives/base/tooltip.tsx +0 -209
  620. package/src/components/ui/alert-dialog.tsx +0 -177
  621. package/src/components/ui/badge/badge.styles.ts +0 -46
  622. package/src/components/ui/badge/badge.tsx +0 -52
  623. package/src/components/ui/badge/badge.types.ts +0 -41
  624. package/src/components/ui/badge/index.ts +0 -8
  625. package/src/components/ui/button/button.styles.ts +0 -66
  626. package/src/components/ui/button/button.tsx +0 -209
  627. package/src/components/ui/button/button.types.ts +0 -125
  628. package/src/components/ui/button/index.ts +0 -7
  629. package/src/components/ui/card.tsx +0 -108
  630. package/src/components/ui/combobox.tsx +0 -293
  631. package/src/components/ui/devenv-bracket.tsx +0 -81
  632. package/src/components/ui/dropdown-menu.tsx +0 -261
  633. package/src/components/ui/field.tsx +0 -227
  634. package/src/components/ui/index.ts +0 -28
  635. package/src/components/ui/input-group.tsx +0 -149
  636. package/src/components/ui/label.tsx +0 -18
  637. package/src/components/ui/morphing-popover/index.ts +0 -10
  638. package/src/components/ui/morphing-popover/morphing-popover.tsx +0 -183
  639. package/src/components/ui/select.tsx +0 -190
  640. package/src/components/ui/separator.tsx +0 -25
  641. package/src/components/ui/switch.tsx +0 -9
  642. package/src/components/ui/tabs.tsx +0 -9
  643. package/src/hooks/use-is-in-view.tsx +0 -25
  644. package/src/icons/index.ts +0 -12
  645. package/src/icons/lucide-animated/index.ts +0 -38
  646. /package/dist/{components/ui/morphing-popover/morphing-popover.module-yxDDcJHZ.css → react/components/MorphingPopover/morphing-popover.module-BkcZcmVy.css} +0 -0
  647. /package/dist/{icons → react/icons}/index.js +0 -0
  648. /package/dist/{icons → react/icons}/lucide-animated/check.d.ts +0 -0
  649. /package/dist/{icons → react/icons}/lucide-animated/edit-2.d.ts +0 -0
  650. /package/dist/{icons → react/icons}/lucide-animated/globe.d.ts +0 -0
  651. /package/dist/{icons → react/icons}/lucide-animated/index.js +0 -0
  652. /package/dist/{icons → react/icons}/lucide-animated/layers.d.ts +0 -0
  653. /package/dist/{icons → react/icons}/lucide-animated/package.d.ts +0 -0
  654. /package/dist/{icons → react/icons}/lucide-animated/palette.d.ts +0 -0
  655. /package/dist/{icons → react/icons}/lucide-animated/refresh-cw.d.ts +0 -0
  656. /package/dist/{icons → react/icons}/lucide-animated/rocket.d.ts +0 -0
  657. /package/dist/{icons → react/icons}/lucide-animated/save.d.ts +0 -0
  658. /package/dist/{icons → react/icons}/lucide-animated/trash-2.d.ts +0 -0
  659. /package/dist/{icons → react/icons}/lucide-animated/type.d.ts +0 -0
  660. /package/dist/{icons → react/icons}/lucide-animated/upload.d.ts +0 -0
  661. /package/src/{components/ui/morphing-popover → react/components/MorphingPopover}/morphing-popover.module.css +0 -0
  662. /package/src/{icons → react/icons}/lucide-animated/arrow-down-to-line.tsx +0 -0
  663. /package/src/{icons → react/icons}/lucide-animated/arrow-up.tsx +0 -0
  664. /package/src/{icons → react/icons}/lucide-animated/check.tsx +0 -0
  665. /package/src/{icons → react/icons}/lucide-animated/edit-2.tsx +0 -0
  666. /package/src/{icons → react/icons}/lucide-animated/globe.tsx +0 -0
  667. /package/src/{icons → react/icons}/lucide-animated/layers.tsx +0 -0
  668. /package/src/{icons → react/icons}/lucide-animated/list.tsx +0 -0
  669. /package/src/{icons → react/icons}/lucide-animated/package.tsx +0 -0
  670. /package/src/{icons → react/icons}/lucide-animated/palette.tsx +0 -0
  671. /package/src/{icons → react/icons}/lucide-animated/refresh-cw.tsx +0 -0
  672. /package/src/{icons → react/icons}/lucide-animated/rocket.tsx +0 -0
  673. /package/src/{icons → react/icons}/lucide-animated/save.tsx +0 -0
  674. /package/src/{icons → react/icons}/lucide-animated/terminal.tsx +0 -0
  675. /package/src/{icons → react/icons}/lucide-animated/trash-2.tsx +0 -0
  676. /package/src/{icons → react/icons}/lucide-animated/type.tsx +0 -0
  677. /package/src/{icons → react/icons}/lucide-animated/upload.tsx +0 -0
@@ -1,11 +1,11 @@
1
1
  import { clsx } from "clsx";
2
2
  import { twMerge } from "tailwind-merge";
3
3
 
4
- //#region src/lib/utils.ts
4
+ //#region src/react/lib/utils.ts
5
5
  /**
6
- * Utility functions for UI components.
6
+ * React-specific utility functions.
7
7
  *
8
- * @module @mks2508/mks-ui/lib/utils
8
+ * @module @mks2508/mks-ui/react/lib/utils
9
9
  */
10
10
  /**
11
11
  * Merge class names with Tailwind CSS class deduplication.
@@ -0,0 +1,31 @@
1
+ import * as React from '../../../react';
2
+ import { type HTMLMotionProps, type LegacyAnimationControls, type TargetAndTransition, type Transition } from 'motion/react';
3
+ import { type WithAsChild } from '../../../react/primitives/Slot';
4
+ /** Props for the AutoHeight primitive component. */
5
+ type IAutoHeightProps = WithAsChild<{
6
+ children: React.ReactNode;
7
+ /** Dependency list to trigger re-measurement. */
8
+ deps?: React.DependencyList;
9
+ /** Motion animate target. */
10
+ animate?: TargetAndTransition | LegacyAnimationControls;
11
+ /** Motion transition config. */
12
+ transition?: Transition;
13
+ } & Omit<HTMLMotionProps<'div'>, 'animate'>>;
14
+ /**
15
+ * AutoHeight primitive — animates height changes of dynamic content.
16
+ * Uses ResizeObserver internally to track content height and Motion for animation.
17
+ *
18
+ * @param deps - Dependency list to trigger re-measurement
19
+ * @param transition - Motion spring/tween transition config
20
+ * @param asChild - Render as child element using Slot pattern
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * <AutoHeight deps={[content]}>
25
+ * <div>{content}</div>
26
+ * </AutoHeight>
27
+ * ```
28
+ */
29
+ declare function AutoHeight({ children, deps, transition, style, animate, asChild, ...props }: IAutoHeightProps): import("react/jsx-runtime").JSX.Element;
30
+ export { AutoHeight, type IAutoHeightProps };
31
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/primitives/AutoHeight/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAEL,KAAK,eAAe,EACpB,KAAK,uBAAuB,EAC5B,KAAK,mBAAmB,EACxB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAGtB,OAAO,EAAQ,KAAK,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAEjE,oDAAoD;AACpD,KAAK,gBAAgB,GAAG,WAAW,CACjC;IACE,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,iDAAiD;IACjD,IAAI,CAAC,EAAE,KAAK,CAAC,cAAc,CAAC;IAC5B,6BAA6B;IAC7B,OAAO,CAAC,EAAE,mBAAmB,GAAG,uBAAuB,CAAC;IACxD,gCAAgC;IAChC,UAAU,CAAC,EAAE,UAAU,CAAC;CACzB,GAAG,IAAI,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC,CAC5C,CAAC;AAEF;;;;;;;;;;;;;;GAcG;AACH,iBAAS,UAAU,CAAC,EAClB,QAAQ,EACR,IAAS,EACT,UAMC,EACD,KAAK,EACL,OAAO,EACP,OAAe,EACf,GAAG,KAAK,EACT,EAAE,gBAAgB,2CAelB;AAED,OAAO,EAAE,UAAU,EAAE,KAAK,gBAAgB,EAAE,CAAC"}
@@ -0,0 +1,52 @@
1
+ 'use client';
2
+
3
+ import { Slot } from "../Slot/index.js";
4
+ import { useAutoHeight } from "../../hooks/Animation/UseAutoHeight.js";
5
+ import "../../../react";
6
+ import { motion } from "motion/react";
7
+ import { jsx } from "react/jsx-runtime";
8
+
9
+ //#region src/react/primitives/AutoHeight/index.tsx
10
+ /**
11
+ * AutoHeight primitive — animates height changes of dynamic content.
12
+ * Uses ResizeObserver internally to track content height and Motion for animation.
13
+ *
14
+ * @param deps - Dependency list to trigger re-measurement
15
+ * @param transition - Motion spring/tween transition config
16
+ * @param asChild - Render as child element using Slot pattern
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <AutoHeight deps={[content]}>
21
+ * <div>{content}</div>
22
+ * </AutoHeight>
23
+ * ```
24
+ */
25
+ function AutoHeight({ children, deps = [], transition = {
26
+ type: "spring",
27
+ stiffness: 300,
28
+ damping: 30,
29
+ bounce: 0,
30
+ restDelta: .01
31
+ }, style, animate, asChild = false, ...props }) {
32
+ const { ref, height } = useAutoHeight(deps);
33
+ return /* @__PURE__ */ jsx(asChild ? Slot : motion.div, {
34
+ style: {
35
+ overflow: "hidden",
36
+ ...style
37
+ },
38
+ animate: {
39
+ height,
40
+ ...animate
41
+ },
42
+ transition,
43
+ ...props,
44
+ children: /* @__PURE__ */ jsx("div", {
45
+ ref,
46
+ children
47
+ })
48
+ });
49
+ }
50
+
51
+ //#endregion
52
+ export { AutoHeight };
@@ -0,0 +1,44 @@
1
+ import * as React from '../../../react';
2
+ import { type SpringOptions } from 'motion/react';
3
+ import { type IUseIsInViewOptions } from '../../../react/hooks/DOM/UseIsInView';
4
+ /** Props for the CountingNumber primitive. */
5
+ type ICountingNumberProps = Omit<React.ComponentProps<'span'>, 'children'> & {
6
+ /** Target number to animate to. */
7
+ number: number;
8
+ /** Starting number (default: 0). */
9
+ fromNumber?: number;
10
+ /** Pad integer part with leading zeros. */
11
+ padStart?: boolean;
12
+ /** Decimal separator character. */
13
+ decimalSeparator?: string;
14
+ /** Number of decimal places to show. */
15
+ decimalPlaces?: number;
16
+ /** Spring transition options. */
17
+ transition?: SpringOptions;
18
+ /** Delay in ms before animation starts. */
19
+ delay?: number;
20
+ /** Start at target number instead of fromNumber. */
21
+ initiallyStable?: boolean;
22
+ } & IUseIsInViewOptions;
23
+ /**
24
+ * CountingNumber primitive — animates a number from one value to another
25
+ * using spring physics. Supports decimal places, padding, and in-view triggers.
26
+ *
27
+ * @param number - Target number to animate to
28
+ * @param fromNumber - Starting number (default: 0)
29
+ * @param transition - Spring physics options
30
+ * @param inView - Only animate when in viewport
31
+ *
32
+ * @example
33
+ * ```tsx
34
+ * <CountingNumber number={1234} transition={{ stiffness: 90, damping: 50 }} />
35
+ * ```
36
+ *
37
+ * @example
38
+ * ```tsx
39
+ * <CountingNumber number={99.99} decimalPlaces={2} decimalSeparator="," inView inViewOnce />
40
+ * ```
41
+ */
42
+ declare function CountingNumber({ ref, number, fromNumber, padStart, inView, inViewMargin, inViewOnce, decimalSeparator, transition, decimalPlaces, delay, initiallyStable, ...props }: ICountingNumberProps): import("react/jsx-runtime").JSX.Element;
43
+ export { CountingNumber, type ICountingNumberProps };
44
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/primitives/CountingNumber/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAA6B,KAAK,aAAa,EAAE,MAAM,cAAc,CAAC;AAE7E,OAAO,EAEL,KAAK,mBAAmB,EACzB,MAAM,+BAA+B,CAAC;AAEvC,8CAA8C;AAC9C,KAAK,oBAAoB,GAAG,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,UAAU,CAAC,GAAG;IAC3E,mCAAmC;IACnC,MAAM,EAAE,MAAM,CAAC;IACf,oCAAoC;IACpC,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2CAA2C;IAC3C,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mCAAmC;IACnC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,wCAAwC;IACxC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iCAAiC;IACjC,UAAU,CAAC,EAAE,aAAa,CAAC;IAC3B,2CAA2C;IAC3C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,oDAAoD;IACpD,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,mBAAmB,CAAC;AAExB;;;;;;;;;;;;;;;;;;GAkBG;AACH,iBAAS,cAAc,CAAC,EACtB,GAAG,EACH,MAAM,EACN,UAAc,EACd,QAAgB,EAChB,MAAc,EACd,YAAoB,EACpB,UAAiB,EACjB,gBAAsB,EACtB,UAA2C,EAC3C,aAAiB,EACjB,KAAS,EACT,eAAuB,EACvB,GAAG,KAAK,EACT,EAAE,oBAAoB,2CAiFtB;AAED,OAAO,EAAE,cAAc,EAAE,KAAK,oBAAoB,EAAE,CAAC"}
@@ -0,0 +1,97 @@
1
+ 'use client';
2
+
3
+ import { useIsInView } from "../../hooks/DOM/UseIsInView.js";
4
+ import * as React from "../../../react";
5
+ import { useMotionValue, useSpring } from "motion/react";
6
+ import { jsx } from "react/jsx-runtime";
7
+
8
+ //#region src/react/primitives/CountingNumber/index.tsx
9
+ /**
10
+ * CountingNumber primitive — animates a number from one value to another
11
+ * using spring physics. Supports decimal places, padding, and in-view triggers.
12
+ *
13
+ * @param number - Target number to animate to
14
+ * @param fromNumber - Starting number (default: 0)
15
+ * @param transition - Spring physics options
16
+ * @param inView - Only animate when in viewport
17
+ *
18
+ * @example
19
+ * ```tsx
20
+ * <CountingNumber number={1234} transition={{ stiffness: 90, damping: 50 }} />
21
+ * ```
22
+ *
23
+ * @example
24
+ * ```tsx
25
+ * <CountingNumber number={99.99} decimalPlaces={2} decimalSeparator="," inView inViewOnce />
26
+ * ```
27
+ */
28
+ function CountingNumber({ ref, number, fromNumber = 0, padStart = false, inView = false, inViewMargin = "0px", inViewOnce = true, decimalSeparator = ".", transition = {
29
+ stiffness: 90,
30
+ damping: 50
31
+ }, decimalPlaces = 0, delay = 0, initiallyStable = false, ...props }) {
32
+ const { ref: localRef, isInView } = useIsInView(ref, {
33
+ inView,
34
+ inViewOnce,
35
+ inViewMargin
36
+ });
37
+ const numberStr = number.toString();
38
+ const decimals = typeof decimalPlaces === "number" ? decimalPlaces : numberStr.includes(".") ? numberStr.split(".")[1]?.length ?? 0 : 0;
39
+ const motionVal = useMotionValue(initiallyStable ? number : fromNumber);
40
+ const springVal = useSpring(motionVal, transition);
41
+ React.useEffect(() => {
42
+ const timeoutId = setTimeout(() => {
43
+ if (isInView) motionVal.set(number);
44
+ }, delay);
45
+ return () => clearTimeout(timeoutId);
46
+ }, [
47
+ isInView,
48
+ number,
49
+ motionVal,
50
+ delay
51
+ ]);
52
+ React.useEffect(() => {
53
+ const unsubscribe = springVal.on("change", (latest) => {
54
+ if (localRef.current) {
55
+ let formatted = decimals > 0 ? latest.toFixed(decimals) : Math.round(latest).toString();
56
+ if (decimals > 0) formatted = formatted.replace(".", decimalSeparator);
57
+ if (padStart) {
58
+ const finalIntLength = Math.floor(Math.abs(number)).toString().length;
59
+ const [intPart, fracPart] = formatted.split(decimalSeparator);
60
+ const paddedInt = intPart?.padStart(finalIntLength, "0") ?? "";
61
+ formatted = fracPart ? `${paddedInt}${decimalSeparator}${fracPart}` : paddedInt;
62
+ }
63
+ localRef.current.textContent = formatted;
64
+ }
65
+ });
66
+ return () => unsubscribe();
67
+ }, [
68
+ springVal,
69
+ decimals,
70
+ padStart,
71
+ number,
72
+ decimalSeparator,
73
+ localRef
74
+ ]);
75
+ const finalIntLength = Math.floor(Math.abs(number)).toString().length;
76
+ const formatValue = (val) => {
77
+ let out = decimals > 0 ? val.toFixed(decimals) : Math.round(val).toString();
78
+ if (decimals > 0) out = out.replace(".", decimalSeparator);
79
+ if (padStart) {
80
+ const [intPart, fracPart] = out.split(decimalSeparator);
81
+ const paddedInt = (intPart ?? "").padStart(finalIntLength, "0");
82
+ out = fracPart ? `${paddedInt}${decimalSeparator}${fracPart}` : paddedInt;
83
+ }
84
+ return out;
85
+ };
86
+ const zeroText = padStart ? "0".padStart(finalIntLength, "0") + (decimals > 0 ? decimalSeparator + "0".repeat(decimals) : "") : "0" + (decimals > 0 ? decimalSeparator + "0".repeat(decimals) : "");
87
+ const initialText = initiallyStable ? formatValue(number) : zeroText;
88
+ return /* @__PURE__ */ jsx("span", {
89
+ ref: localRef,
90
+ "data-slot": "counting-number",
91
+ ...props,
92
+ children: initialText
93
+ });
94
+ }
95
+
96
+ //#endregion
97
+ export { CountingNumber };
@@ -0,0 +1,113 @@
1
+ import type { Transition } from 'motion/react';
2
+ /** Mode for highlight tracking. */
3
+ export type HighlightMode = 'children' | 'parent';
4
+ /** Bounding rectangle offsets. */
5
+ export type Bounds = {
6
+ top: number;
7
+ left: number;
8
+ width: number;
9
+ height: number;
10
+ };
11
+ /** Internal context type for Highlight state. */
12
+ export type HighlightContextType<T extends string> = {
13
+ as?: keyof HTMLElementTagNameMap;
14
+ mode: HighlightMode;
15
+ activeValue: T | null;
16
+ setActiveValue: (value: T | null) => void;
17
+ setBounds: (bounds: DOMRect) => void;
18
+ clearBounds: () => void;
19
+ id: string;
20
+ hover: boolean;
21
+ click: boolean;
22
+ className?: string;
23
+ style?: React.CSSProperties;
24
+ activeClassName?: string;
25
+ setActiveClassName: (className: string) => void;
26
+ transition?: Transition;
27
+ disabled?: boolean;
28
+ enabled?: boolean;
29
+ exitDelay?: number;
30
+ forceUpdateBounds?: boolean;
31
+ };
32
+ /** Base props shared by all Highlight variants. */
33
+ export type BaseHighlightProps<T extends React.ElementType = 'div'> = {
34
+ as?: T;
35
+ ref?: React.Ref<HTMLDivElement>;
36
+ mode?: HighlightMode;
37
+ value?: string | null;
38
+ defaultValue?: string | null;
39
+ onValueChange?: (value: string | null) => void;
40
+ className?: string;
41
+ style?: React.CSSProperties;
42
+ transition?: Transition;
43
+ hover?: boolean;
44
+ click?: boolean;
45
+ disabled?: boolean;
46
+ enabled?: boolean;
47
+ exitDelay?: number;
48
+ };
49
+ /** Props specific to parent mode. */
50
+ export type ParentModeHighlightProps = {
51
+ boundsOffset?: Partial<Bounds>;
52
+ containerClassName?: string;
53
+ forceUpdateBounds?: boolean;
54
+ };
55
+ /** Controlled parent mode highlight props. */
56
+ export type ControlledParentModeHighlightProps<T extends React.ElementType = 'div'> = BaseHighlightProps<T> & ParentModeHighlightProps & {
57
+ mode: 'parent';
58
+ controlledItems: true;
59
+ children: React.ReactNode;
60
+ };
61
+ /** Controlled children mode highlight props. */
62
+ export type ControlledChildrenModeHighlightProps<T extends React.ElementType = 'div'> = BaseHighlightProps<T> & {
63
+ mode?: 'children' | undefined;
64
+ controlledItems: true;
65
+ children: React.ReactNode;
66
+ };
67
+ /** Uncontrolled parent mode highlight props. */
68
+ export type UncontrolledParentModeHighlightProps<T extends React.ElementType = 'div'> = BaseHighlightProps<T> & ParentModeHighlightProps & {
69
+ mode: 'parent';
70
+ controlledItems?: false;
71
+ itemsClassName?: string;
72
+ children: React.ReactElement | React.ReactElement[];
73
+ };
74
+ /** Uncontrolled children mode highlight props. */
75
+ export type UncontrolledChildrenModeHighlightProps<T extends React.ElementType = 'div'> = BaseHighlightProps<T> & {
76
+ mode?: 'children';
77
+ controlledItems?: false;
78
+ itemsClassName?: string;
79
+ children: React.ReactElement | React.ReactElement[];
80
+ };
81
+ /**
82
+ * Props for the Highlight component.
83
+ * Discriminated union supporting controlled/uncontrolled + children/parent modes.
84
+ */
85
+ export type IHighlightProps<T extends React.ElementType = 'div'> = ControlledParentModeHighlightProps<T> | ControlledChildrenModeHighlightProps<T> | UncontrolledParentModeHighlightProps<T> | UncontrolledChildrenModeHighlightProps<T>;
86
+ /** Extended child props used internally by HighlightItem. */
87
+ export type ExtendedChildProps = React.ComponentProps<'div'> & {
88
+ id?: string;
89
+ ref?: React.Ref<HTMLElement>;
90
+ 'data-active'?: string;
91
+ 'data-value'?: string;
92
+ 'data-disabled'?: boolean;
93
+ 'data-highlight'?: boolean;
94
+ 'data-slot'?: string;
95
+ };
96
+ /**
97
+ * Props for a HighlightItem within a Highlight container.
98
+ */
99
+ export type IHighlightItemProps<T extends React.ElementType = 'div'> = React.ComponentProps<T> & {
100
+ as?: T;
101
+ children: React.ReactElement;
102
+ id?: string;
103
+ value?: string;
104
+ className?: string;
105
+ style?: React.CSSProperties;
106
+ transition?: Transition;
107
+ activeClassName?: string;
108
+ disabled?: boolean;
109
+ exitDelay?: number;
110
+ asChild?: boolean;
111
+ forceUpdateBounds?: boolean;
112
+ };
113
+ //# sourceMappingURL=Highlight.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Highlight.types.d.ts","sourceRoot":"","sources":["../../../../src/react/primitives/Highlight/Highlight.types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,48 @@
1
+ import * as React from '../../../react';
2
+ import type { HighlightContextType, IHighlightProps, IHighlightItemProps } from './Highlight.types';
3
+ /**
4
+ * Hook to access the Highlight context.
5
+ * Must be used within a Highlight provider.
6
+ *
7
+ * @returns The current highlight context
8
+ */
9
+ declare function useHighlight<T extends string>(): HighlightContextType<T>;
10
+ /**
11
+ * Highlight primitive — animated background indicator that follows the active item.
12
+ * Supports two modes: "children" (layoutId-based per item) and "parent" (absolute positioned).
13
+ *
14
+ * This is an internal primitive used by Tabs, Menu, and similar components.
15
+ *
16
+ * @param mode - Tracking mode: 'children' or 'parent'
17
+ * @param hover - Activate on hover instead of click
18
+ * @param click - Activate on click (default: true)
19
+ * @param transition - Motion transition config
20
+ *
21
+ * @example
22
+ * ```tsx
23
+ * <Highlight hover>
24
+ * <HighlightItem><button>Tab 1</button></HighlightItem>
25
+ * <HighlightItem><button>Tab 2</button></HighlightItem>
26
+ * </Highlight>
27
+ * ```
28
+ */
29
+ declare function Highlight<T extends React.ElementType = 'div'>({ ref, ...props }: IHighlightProps<T>): import("react/jsx-runtime").JSX.Element;
30
+ /**
31
+ * HighlightItem — a single item within a Highlight container.
32
+ * Tracks its own position and renders the animated highlight indicator.
33
+ *
34
+ * @param value - Unique identifier for this item
35
+ * @param activeClassName - Additional class when this item is active
36
+ * @param asChild - Use the child element directly instead of wrapping
37
+ *
38
+ * @example
39
+ * ```tsx
40
+ * <HighlightItem value="tab-1">
41
+ * <button>Tab 1</button>
42
+ * </HighlightItem>
43
+ * ```
44
+ */
45
+ declare function HighlightItem<T extends React.ElementType>({ ref, as, children, id, value, className, style, transition, disabled, activeClassName, exitDelay, asChild, forceUpdateBounds, ...props }: IHighlightItemProps<T>): any;
46
+ export { Highlight, HighlightItem, useHighlight, };
47
+ export type { IHighlightProps, IHighlightItemProps, Bounds, HighlightMode, HighlightContextType, } from './Highlight.types';
48
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/primitives/Highlight/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAI/B,OAAO,KAAK,EAEV,oBAAoB,EACpB,eAAe,EACf,mBAAmB,EAGpB,MAAM,mBAAmB,CAAC;AAc3B;;;;;GAKG;AACH,iBAAS,YAAY,CAAC,CAAC,SAAS,MAAM,KAAK,oBAAoB,CAAC,CAAC,CAAC,CAMjE;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,iBAAS,SAAS,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,GAAG,KAAK,EAAE,EACtD,GAAG,EACH,GAAG,KAAK,EACT,EAAE,eAAe,CAAC,CAAC,CAAC,2CAwNpB;AAiBD;;;;;;;;;;;;;;GAcG;AACH,iBAAS,aAAa,CAAC,CAAC,SAAS,KAAK,CAAC,WAAW,EAAE,EAClD,GAAG,EACH,EAAE,EACF,QAAQ,EACR,EAAE,EACF,KAAK,EACL,SAAS,EACT,KAAK,EACL,UAAU,EACV,QAAgB,EAChB,eAAe,EACf,SAAS,EACT,OAAe,EACf,iBAAiB,EACjB,GAAG,KAAK,EACT,EAAE,mBAAmB,CAAC,CAAC,CAAC,OA2OxB;AAED,OAAO,EACL,SAAS,EACT,aAAa,EACb,YAAY,GACb,CAAC;AAGF,YAAY,EACV,eAAe,EACf,mBAAmB,EACnB,MAAM,EACN,aAAa,EACb,oBAAoB,GACrB,MAAM,mBAAmB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
 
3
- import { cn } from "../../../../lib/utils.js";
4
- import * as React from "react";
5
- import { Fragment, jsx, jsxs } from "react/jsx-runtime";
3
+ import { cn } from "../../lib/utils.js";
4
+ import * as React from "../../../react";
6
5
  import { AnimatePresence, motion } from "motion/react";
6
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
7
7
 
8
- //#region src/components/animate-ui/primitives/effects/highlight.tsx
8
+ //#region src/react/primitives/Highlight/index.tsx
9
9
  const DEFAULT_BOUNDS_OFFSET = {
10
10
  top: 0,
11
11
  left: 0,
@@ -13,11 +13,36 @@ const DEFAULT_BOUNDS_OFFSET = {
13
13
  height: 0
14
14
  };
15
15
  const HighlightContext = React.createContext(void 0);
16
+ /**
17
+ * Hook to access the Highlight context.
18
+ * Must be used within a Highlight provider.
19
+ *
20
+ * @returns The current highlight context
21
+ */
16
22
  function useHighlight() {
17
23
  const context = React.useContext(HighlightContext);
18
24
  if (!context) throw new Error("useHighlight must be used within a HighlightProvider");
19
25
  return context;
20
26
  }
27
+ /**
28
+ * Highlight primitive — animated background indicator that follows the active item.
29
+ * Supports two modes: "children" (layoutId-based per item) and "parent" (absolute positioned).
30
+ *
31
+ * This is an internal primitive used by Tabs, Menu, and similar components.
32
+ *
33
+ * @param mode - Tracking mode: 'children' or 'parent'
34
+ * @param hover - Activate on hover instead of click
35
+ * @param click - Activate on click (default: true)
36
+ * @param transition - Motion transition config
37
+ *
38
+ * @example
39
+ * ```tsx
40
+ * <Highlight hover>
41
+ * <HighlightItem><button>Tab 1</button></HighlightItem>
42
+ * <HighlightItem><button>Tab 2</button></HighlightItem>
43
+ * </Highlight>
44
+ * ```
45
+ */
21
46
  function Highlight({ ref, ...props }) {
22
47
  const { as: Component = "div", children, value, defaultValue, onValueChange, className, style, transition = {
23
48
  type: "spring",
@@ -182,6 +207,21 @@ function getNonOverridingDataAttributes(element, dataAttributes) {
182
207
  return acc;
183
208
  }, {});
184
209
  }
210
+ /**
211
+ * HighlightItem — a single item within a Highlight container.
212
+ * Tracks its own position and renders the animated highlight indicator.
213
+ *
214
+ * @param value - Unique identifier for this item
215
+ * @param activeClassName - Additional class when this item is active
216
+ * @param asChild - Use the child element directly instead of wrapping
217
+ *
218
+ * @example
219
+ * ```tsx
220
+ * <HighlightItem value="tab-1">
221
+ * <button>Tab 1</button>
222
+ * </HighlightItem>
223
+ * ```
224
+ */
185
225
  function HighlightItem({ ref, as, children, id, value, className, style, transition, disabled = false, activeClassName, exitDelay, asChild = false, forceUpdateBounds, ...props }) {
186
226
  const itemId = React.useId();
187
227
  const { activeValue, setActiveValue, mode, setBounds, clearBounds, hover, click, enabled, className: contextClassName, style: contextStyle, transition: contextTransition, id: contextId, disabled: contextDisabled, exitDelay: contextExitDelay, forceUpdateBounds: contextForceUpdateBounds, setActiveClassName } = useHighlight();
@@ -353,4 +393,4 @@ function HighlightItem({ ref, as, children, id, value, className, style, transit
353
393
  }
354
394
 
355
395
  //#endregion
356
- export { Highlight, HighlightItem };
396
+ export { Highlight, HighlightItem, useHighlight };
@@ -0,0 +1,53 @@
1
+ import * as React from '../../../react';
2
+ import { type HTMLMotionProps } from 'motion/react';
3
+ type AnyProps = Record<string, unknown>;
4
+ type DOMMotionProps<T extends HTMLElement = HTMLElement> = Omit<HTMLMotionProps<keyof HTMLElementTagNameMap>, 'ref'> & {
5
+ ref?: React.Ref<T>;
6
+ };
7
+ type WithAsChild<Base extends object> = (Base & {
8
+ asChild: true;
9
+ children: React.ReactElement;
10
+ }) | (Base & {
11
+ asChild?: false | undefined;
12
+ });
13
+ /**
14
+ * Props for the Slot component.
15
+ *
16
+ * @example
17
+ * ```tsx
18
+ * <Slot asChild>
19
+ * <button>Click me</button>
20
+ * </Slot>
21
+ * ```
22
+ */
23
+ export interface ISlotProps<T extends HTMLElement = HTMLElement> extends DOMMotionProps<T> {
24
+ /** Child element to render with motion enhancements. */
25
+ children?: any;
26
+ }
27
+ type SlotProps<T extends HTMLElement = HTMLElement> = ISlotProps<T>;
28
+ /**
29
+ * Slot component - Motion-enhanced composition primitive.
30
+ *
31
+ * Wraps a child element with motion capabilities using the asChild pattern.
32
+ * When the child is already a motion component, it's used directly.
33
+ * Otherwise, a motion wrapper is created with the child's element type.
34
+ *
35
+ * @param children - Child element to render with motion enhancements
36
+ * @param ref - Ref to the merged element
37
+ *
38
+ * @example
39
+ * ```tsx
40
+ * // Basic usage
41
+ * <Slot asChild>
42
+ * <button>Click me</button>
43
+ * </Slot>
44
+ *
45
+ * // With motion props
46
+ * <Slot asChild>
47
+ * <button onClick={handleClick}>Hover me</button>
48
+ * </Slot>
49
+ * ```
50
+ */
51
+ export declare function Slot<T extends HTMLElement = HTMLElement>({ children, ref, ...props }: SlotProps<T>): import("react/jsx-runtime").JSX.Element | null;
52
+ export type { WithAsChild, DOMMotionProps, AnyProps };
53
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/primitives/Slot/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAA6B,KAAK,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/E,KAAK,QAAQ,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAExC,KAAK,cAAc,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,IAAI,CAC7D,eAAe,CAAC,MAAM,qBAAqB,CAAC,EAC5C,KAAK,CACN,GAAG;IAAE,GAAG,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA;CAAE,CAAC;AAE3B,KAAK,WAAW,CAAC,IAAI,SAAS,MAAM,IAChC,CAAC,IAAI,GAAG;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,YAAY,CAAA;CAAE,CAAC,GACxD,CAAC,IAAI,GAAG;IAAE,OAAO,CAAC,EAAE,KAAK,GAAG,SAAS,CAAA;CAAE,CAAC,CAAC;AAE7C;;;;;;;;;GASG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,CAC7D,SAAQ,cAAc,CAAC,CAAC,CAAC;IACzB,wDAAwD;IAExD,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AAED,KAAK,SAAS,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,IAAI,UAAU,CAAC,CAAC,CAAC,CAAC;AAwCpE;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,IAAI,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EAAE,EACxD,QAAQ,EACR,GAAG,EACH,GAAG,KAAK,EACT,EAAE,SAAS,CAAC,CAAC,CAAC,kDAuBd;AAED,YAAY,EAAE,WAAW,EAAE,cAAc,EAAE,QAAQ,EAAE,CAAC"}
@@ -1,11 +1,11 @@
1
1
  'use client';
2
2
 
3
- import { cn } from "../../../../lib/utils.js";
4
- import * as React from "react";
5
- import { jsx } from "react/jsx-runtime";
3
+ import { cn } from "../../lib/utils.js";
4
+ import * as React from "../../../react";
6
5
  import { isMotionComponent, motion } from "motion/react";
6
+ import { jsx } from "react/jsx-runtime";
7
7
 
8
- //#region src/components/animate-ui/primitives/animate/slot.tsx
8
+ //#region src/react/primitives/Slot/index.tsx
9
9
  function mergeRefs(...refs) {
10
10
  return (node) => {
11
11
  refs.forEach((ref) => {
@@ -27,6 +27,29 @@ function mergeProps(childProps, slotProps) {
27
27
  };
28
28
  return merged;
29
29
  }
30
+ /**
31
+ * Slot component - Motion-enhanced composition primitive.
32
+ *
33
+ * Wraps a child element with motion capabilities using the asChild pattern.
34
+ * When the child is already a motion component, it's used directly.
35
+ * Otherwise, a motion wrapper is created with the child's element type.
36
+ *
37
+ * @param children - Child element to render with motion enhancements
38
+ * @param ref - Ref to the merged element
39
+ *
40
+ * @example
41
+ * ```tsx
42
+ * // Basic usage
43
+ * <Slot asChild>
44
+ * <button>Click me</button>
45
+ * </Slot>
46
+ *
47
+ * // With motion props
48
+ * <Slot asChild>
49
+ * <button onClick={handleClick}>Hover me</button>
50
+ * </Slot>
51
+ * ```
52
+ */
30
53
  function Slot({ children, ref, ...props }) {
31
54
  const isAlreadyMotion = typeof children.type === "object" && children.type !== null && isMotionComponent(children.type);
32
55
  const Base = React.useMemo(() => isAlreadyMotion ? children.type : motion.create(children.type), [isAlreadyMotion, children.type]);
@@ -0,0 +1,12 @@
1
+ /**
2
+ * Primitives barrel export.
3
+ *
4
+ * Building blocks for components. Not meant to be used directly by consumers.
5
+ *
6
+ * @module @mks2508/mks-ui/react/primitives
7
+ */
8
+ export * from './Slot';
9
+ export * from './Highlight';
10
+ export * from './AutoHeight';
11
+ export * from './CountingNumber';
12
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react/primitives/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAGH,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,cAAc,CAAC;AAC7B,cAAc,kBAAkB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { Slot } from "./Slot/index.js";
2
+ import { Highlight, HighlightItem, useHighlight } from "./Highlight/index.js";
3
+ import { AutoHeight } from "./AutoHeight/index.js";
4
+ import { CountingNumber } from "./CountingNumber/index.js";