@mks2508/mks-ui 0.1.4 → 0.2.1

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 (718) hide show
  1. package/README.md +38 -11
  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 -7
  7. package/dist/index.d.ts.map +1 -1
  8. package/dist/index.js +0 -72
  9. package/dist/react-ui/components/MorphingPopover/MorphingPopover.types.d.ts +44 -0
  10. package/dist/react-ui/components/MorphingPopover/MorphingPopover.types.d.ts.map +1 -0
  11. package/dist/react-ui/components/MorphingPopover/index.d.ts +46 -0
  12. package/dist/react-ui/components/MorphingPopover/index.d.ts.map +1 -0
  13. package/dist/{components/ui/morphing-popover/morphing-popover.js → react-ui/components/MorphingPopover/index.js} +46 -6
  14. package/dist/react-ui/components/MorphingPopover/morphing-popover.module.js +5 -0
  15. package/dist/react-ui/components/index.d.ts +9 -0
  16. package/dist/react-ui/components/index.d.ts.map +1 -0
  17. package/dist/react-ui/components/index.js +1 -0
  18. package/dist/react-ui/hooks/Animation/UseAutoHeight.d.ts +30 -0
  19. package/dist/react-ui/hooks/Animation/UseAutoHeight.d.ts.map +1 -0
  20. package/dist/{hooks/use-auto-height.js → react-ui/hooks/Animation/UseAutoHeight.js} +15 -1
  21. package/dist/react-ui/hooks/DOM/UseIsInView.d.ts +32 -0
  22. package/dist/react-ui/hooks/DOM/UseIsInView.d.ts.map +1 -0
  23. package/dist/react-ui/hooks/DOM/UseIsInView.js +33 -0
  24. package/dist/react-ui/hooks/State/UseControlledState.d.ts +31 -0
  25. package/dist/react-ui/hooks/State/UseControlledState.d.ts.map +1 -0
  26. package/dist/react-ui/hooks/State/UseControlledState.js +34 -0
  27. package/dist/react-ui/hooks/State/UseDataState.d.ts +21 -0
  28. package/dist/react-ui/hooks/State/UseDataState.d.ts.map +1 -0
  29. package/dist/{hooks/use-data-state.js → react-ui/hooks/State/UseDataState.js} +22 -1
  30. package/dist/react-ui/hooks/index.d.ts +14 -0
  31. package/dist/react-ui/hooks/index.d.ts.map +1 -0
  32. package/dist/react-ui/hooks/index.js +4 -0
  33. package/dist/react-ui/icons/index.d.ts +8 -0
  34. package/dist/react-ui/icons/index.d.ts.map +1 -0
  35. package/dist/react-ui/icons/lucide-animated/activity.d.ts.map +1 -0
  36. package/dist/{icons → react-ui/icons}/lucide-animated/activity.js +1 -1
  37. package/dist/react-ui/icons/lucide-animated/arrow-down-to-line.d.ts.map +1 -0
  38. package/dist/{icons → react-ui/icons}/lucide-animated/arrow-down-to-line.js +1 -1
  39. package/dist/react-ui/icons/lucide-animated/arrow-up.d.ts.map +1 -0
  40. package/dist/{icons → react-ui/icons}/lucide-animated/arrow-up.js +1 -1
  41. package/dist/react-ui/icons/lucide-animated/bell-electric.d.ts.map +1 -0
  42. package/dist/{icons → react-ui/icons}/lucide-animated/bell-electric.js +1 -1
  43. package/dist/react-ui/icons/lucide-animated/bell.d.ts.map +1 -0
  44. package/dist/{icons → react-ui/icons}/lucide-animated/bell.js +1 -1
  45. package/dist/react-ui/icons/lucide-animated/bot.d.ts.map +1 -0
  46. package/dist/{icons → react-ui/icons}/lucide-animated/bot.js +1 -1
  47. package/dist/react-ui/icons/lucide-animated/box.d.ts.map +1 -0
  48. package/dist/{icons → react-ui/icons}/lucide-animated/box.js +1 -1
  49. package/dist/react-ui/icons/lucide-animated/check.d.ts.map +1 -0
  50. package/dist/{icons → react-ui/icons}/lucide-animated/check.js +1 -1
  51. package/dist/react-ui/icons/lucide-animated/circle-check.d.ts.map +1 -0
  52. package/dist/{icons → react-ui/icons}/lucide-animated/circle-check.js +1 -1
  53. package/dist/react-ui/icons/lucide-animated/delete.d.ts.map +1 -0
  54. package/dist/{icons → react-ui/icons}/lucide-animated/delete.js +1 -1
  55. package/dist/react-ui/icons/lucide-animated/download.d.ts.map +1 -0
  56. package/dist/{icons → react-ui/icons}/lucide-animated/download.js +1 -1
  57. package/dist/react-ui/icons/lucide-animated/edit-2.d.ts.map +1 -0
  58. package/dist/{icons → react-ui/icons}/lucide-animated/edit-2.js +1 -1
  59. package/dist/react-ui/icons/lucide-animated/globe.d.ts.map +1 -0
  60. package/dist/{icons → react-ui/icons}/lucide-animated/globe.js +1 -1
  61. package/dist/react-ui/icons/lucide-animated/home.d.ts.map +1 -0
  62. package/dist/{icons → react-ui/icons}/lucide-animated/home.js +1 -1
  63. package/dist/react-ui/icons/lucide-animated/index.d.ts +38 -0
  64. package/dist/react-ui/icons/lucide-animated/index.d.ts.map +1 -0
  65. package/dist/react-ui/icons/lucide-animated/layers.d.ts.map +1 -0
  66. package/dist/{icons → react-ui/icons}/lucide-animated/layers.js +1 -1
  67. package/dist/react-ui/icons/lucide-animated/layout-panel-top.d.ts.map +1 -0
  68. package/dist/{icons → react-ui/icons}/lucide-animated/layout-panel-top.js +1 -1
  69. package/dist/react-ui/icons/lucide-animated/list.d.ts.map +1 -0
  70. package/dist/{icons → react-ui/icons}/lucide-animated/list.js +1 -1
  71. package/dist/react-ui/icons/lucide-animated/package.d.ts.map +1 -0
  72. package/dist/{icons → react-ui/icons}/lucide-animated/package.js +1 -1
  73. package/dist/react-ui/icons/lucide-animated/palette.d.ts.map +1 -0
  74. package/dist/{icons → react-ui/icons}/lucide-animated/palette.js +1 -1
  75. package/dist/react-ui/icons/lucide-animated/plus.d.ts.map +1 -0
  76. package/dist/{icons → react-ui/icons}/lucide-animated/plus.js +1 -1
  77. package/dist/react-ui/icons/lucide-animated/refresh-cw.d.ts.map +1 -0
  78. package/dist/{icons → react-ui/icons}/lucide-animated/refresh-cw.js +1 -1
  79. package/dist/react-ui/icons/lucide-animated/rocket.d.ts.map +1 -0
  80. package/dist/{icons → react-ui/icons}/lucide-animated/rocket.js +1 -1
  81. package/dist/react-ui/icons/lucide-animated/save.d.ts.map +1 -0
  82. package/dist/{icons → react-ui/icons}/lucide-animated/save.js +1 -1
  83. package/dist/react-ui/icons/lucide-animated/search.d.ts.map +1 -0
  84. package/dist/{icons → react-ui/icons}/lucide-animated/search.js +1 -1
  85. package/dist/react-ui/icons/lucide-animated/settings.d.ts.map +1 -0
  86. package/dist/{icons → react-ui/icons}/lucide-animated/settings.js +1 -1
  87. package/dist/react-ui/icons/lucide-animated/terminal.d.ts.map +1 -0
  88. package/dist/{icons → react-ui/icons}/lucide-animated/terminal.js +1 -1
  89. package/dist/react-ui/icons/lucide-animated/trash-2.d.ts.map +1 -0
  90. package/dist/{icons → react-ui/icons}/lucide-animated/trash-2.js +1 -1
  91. package/dist/react-ui/icons/lucide-animated/trending-down.d.ts.map +1 -0
  92. package/dist/{icons → react-ui/icons}/lucide-animated/trending-down.js +1 -1
  93. package/dist/react-ui/icons/lucide-animated/trending-up.d.ts.map +1 -0
  94. package/dist/{icons → react-ui/icons}/lucide-animated/trending-up.js +1 -1
  95. package/dist/react-ui/icons/lucide-animated/type.d.ts.map +1 -0
  96. package/dist/{icons → react-ui/icons}/lucide-animated/type.js +1 -1
  97. package/dist/react-ui/icons/lucide-animated/upload.d.ts.map +1 -0
  98. package/dist/{icons → react-ui/icons}/lucide-animated/upload.js +1 -1
  99. package/dist/react-ui/icons/lucide-animated/x.d.ts.map +1 -0
  100. package/dist/{icons → react-ui/icons}/lucide-animated/x.js +1 -1
  101. package/dist/react-ui/index.d.ts +19 -0
  102. package/dist/react-ui/index.d.ts.map +1 -0
  103. package/dist/react-ui/index.js +88 -0
  104. package/dist/react-ui/lib/get-strict-context.d.ts +30 -0
  105. package/dist/react-ui/lib/get-strict-context.d.ts.map +1 -0
  106. package/dist/react-ui/lib/get-strict-context.js +40 -0
  107. package/dist/react-ui/lib/index.d.ts +8 -0
  108. package/dist/react-ui/lib/index.d.ts.map +1 -0
  109. package/dist/react-ui/lib/index.js +2 -0
  110. package/dist/{lib → react-ui/lib}/utils.d.ts +2 -2
  111. package/dist/react-ui/lib/utils.d.ts.map +1 -0
  112. package/dist/{lib → react-ui/lib}/utils.js +3 -3
  113. package/dist/react-ui/primitives/AutoHeight/index.d.ts +31 -0
  114. package/dist/react-ui/primitives/AutoHeight/index.d.ts.map +1 -0
  115. package/dist/react-ui/primitives/AutoHeight/index.js +52 -0
  116. package/dist/react-ui/primitives/CountingNumber/index.d.ts +44 -0
  117. package/dist/react-ui/primitives/CountingNumber/index.d.ts.map +1 -0
  118. package/dist/{components/animate-ui/primitives/texts/counting-number.js → react-ui/primitives/CountingNumber/index.js} +21 -2
  119. package/dist/react-ui/primitives/Highlight/Highlight.types.d.ts +113 -0
  120. package/dist/react-ui/primitives/Highlight/Highlight.types.d.ts.map +1 -0
  121. package/dist/react-ui/primitives/Highlight/index.d.ts +48 -0
  122. package/dist/react-ui/primitives/Highlight/index.d.ts.map +1 -0
  123. package/dist/{components/animate-ui/primitives/effects/highlight.js → react-ui/primitives/Highlight/index.js} +42 -2
  124. package/dist/react-ui/primitives/Slot/index.d.ts +53 -0
  125. package/dist/react-ui/primitives/Slot/index.d.ts.map +1 -0
  126. package/dist/{components/animate-ui/primitives/animate/slot.js → react-ui/primitives/Slot/index.js} +25 -2
  127. package/dist/react-ui/primitives/index.d.ts +12 -0
  128. package/dist/react-ui/primitives/index.d.ts.map +1 -0
  129. package/dist/react-ui/primitives/index.js +4 -0
  130. package/dist/react-ui/ui/Accordion/Accordion.styles.d.ts +47 -0
  131. package/dist/react-ui/ui/Accordion/Accordion.styles.d.ts.map +1 -0
  132. package/dist/react-ui/ui/Accordion/Accordion.styles.js +54 -0
  133. package/dist/react-ui/ui/Accordion/Accordion.types.d.ts +160 -0
  134. package/dist/react-ui/ui/Accordion/Accordion.types.d.ts.map +1 -0
  135. package/dist/react-ui/ui/Accordion/index.d.ts +105 -0
  136. package/dist/react-ui/ui/Accordion/index.d.ts.map +1 -0
  137. package/dist/react-ui/ui/Accordion/index.js +266 -0
  138. package/dist/react-ui/ui/AlertDialog/AlertDialog.styles.d.ts +28 -0
  139. package/dist/react-ui/ui/AlertDialog/AlertDialog.styles.d.ts.map +1 -0
  140. package/dist/react-ui/ui/AlertDialog/AlertDialog.styles.js +29 -0
  141. package/dist/react-ui/ui/AlertDialog/AlertDialog.types.d.ts +235 -0
  142. package/dist/react-ui/ui/AlertDialog/AlertDialog.types.d.ts.map +1 -0
  143. package/dist/react-ui/ui/AlertDialog/index.d.ts +194 -0
  144. package/dist/react-ui/ui/AlertDialog/index.d.ts.map +1 -0
  145. package/dist/react-ui/ui/AlertDialog/index.js +319 -0
  146. package/dist/react-ui/ui/Badge/Badge.styles.d.ts +16 -0
  147. package/dist/react-ui/ui/Badge/Badge.styles.d.ts.map +1 -0
  148. package/dist/{components/ui/badge/badge.styles.js → react-ui/ui/Badge/Badge.styles.js} +2 -6
  149. package/dist/react-ui/ui/Badge/Badge.types.d.ts +21 -0
  150. package/dist/react-ui/ui/Badge/Badge.types.d.ts.map +1 -0
  151. package/dist/react-ui/ui/Badge/index.d.ts +20 -0
  152. package/dist/react-ui/ui/Badge/index.d.ts.map +1 -0
  153. package/dist/react-ui/ui/Badge/index.js +34 -0
  154. package/dist/react-ui/ui/Button/Button.styles.d.ts +21 -0
  155. package/dist/react-ui/ui/Button/Button.styles.d.ts.map +1 -0
  156. package/dist/{components/ui/button/button.styles.js → react-ui/ui/Button/Button.styles.js} +3 -9
  157. package/dist/react-ui/ui/Button/Button.types.d.ts +45 -0
  158. package/dist/react-ui/ui/Button/Button.types.d.ts.map +1 -0
  159. package/dist/react-ui/ui/Button/index.d.ts +22 -0
  160. package/dist/react-ui/ui/Button/index.d.ts.map +1 -0
  161. package/dist/react-ui/ui/Button/index.js +103 -0
  162. package/dist/react-ui/ui/Card/Card.styles.d.ts +11 -0
  163. package/dist/react-ui/ui/Card/Card.styles.d.ts.map +1 -0
  164. package/dist/react-ui/ui/Card/Card.styles.js +24 -0
  165. package/dist/react-ui/ui/Card/Card.types.d.ts +22 -0
  166. package/dist/react-ui/ui/Card/Card.types.d.ts.map +1 -0
  167. package/dist/react-ui/ui/Card/index.d.ts +36 -0
  168. package/dist/react-ui/ui/Card/index.d.ts.map +1 -0
  169. package/dist/react-ui/ui/Card/index.js +82 -0
  170. package/dist/react-ui/ui/Checkbox/Checkbox.styles.d.ts +25 -0
  171. package/dist/react-ui/ui/Checkbox/Checkbox.styles.d.ts.map +1 -0
  172. package/dist/react-ui/ui/Checkbox/Checkbox.styles.js +34 -0
  173. package/dist/react-ui/ui/Checkbox/Checkbox.types.d.ts +88 -0
  174. package/dist/react-ui/ui/Checkbox/Checkbox.types.d.ts.map +1 -0
  175. package/dist/react-ui/ui/Checkbox/index.d.ts +59 -0
  176. package/dist/react-ui/ui/Checkbox/index.d.ts.map +1 -0
  177. package/dist/react-ui/ui/Checkbox/index.js +158 -0
  178. package/dist/react-ui/ui/Combobox/Combobox.styles.d.ts +7 -0
  179. package/dist/react-ui/ui/Combobox/Combobox.styles.d.ts.map +1 -0
  180. package/dist/react-ui/ui/Combobox/Combobox.styles.js +17 -0
  181. package/dist/react-ui/ui/Combobox/Combobox.types.d.ts +49 -0
  182. package/dist/react-ui/ui/Combobox/Combobox.types.d.ts.map +1 -0
  183. package/dist/react-ui/ui/Combobox/index.d.ts +60 -0
  184. package/dist/react-ui/ui/Combobox/index.d.ts.map +1 -0
  185. package/dist/{components/ui/combobox.js → react-ui/ui/Combobox/index.js} +53 -15
  186. package/dist/react-ui/ui/CornerBracket/CornerBracket.styles.d.ts +18 -0
  187. package/dist/react-ui/ui/CornerBracket/CornerBracket.styles.d.ts.map +1 -0
  188. package/dist/react-ui/ui/CornerBracket/CornerBracket.styles.js +30 -0
  189. package/dist/react-ui/ui/CornerBracket/CornerBracket.types.d.ts +12 -0
  190. package/dist/react-ui/ui/CornerBracket/CornerBracket.types.d.ts.map +1 -0
  191. package/dist/react-ui/ui/CornerBracket/index.d.ts +23 -0
  192. package/dist/react-ui/ui/CornerBracket/index.d.ts.map +1 -0
  193. package/dist/react-ui/ui/CornerBracket/index.js +42 -0
  194. package/dist/react-ui/ui/Dialog/Dialog.styles.d.ts +24 -0
  195. package/dist/react-ui/ui/Dialog/Dialog.styles.d.ts.map +1 -0
  196. package/dist/react-ui/ui/Dialog/Dialog.styles.js +29 -0
  197. package/dist/react-ui/ui/Dialog/Dialog.types.d.ts +221 -0
  198. package/dist/react-ui/ui/Dialog/Dialog.types.d.ts.map +1 -0
  199. package/dist/react-ui/ui/Dialog/index.d.ts +138 -0
  200. package/dist/react-ui/ui/Dialog/index.d.ts.map +1 -0
  201. package/dist/react-ui/ui/Dialog/index.js +265 -0
  202. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.styles.d.ts +7 -0
  203. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.styles.d.ts.map +1 -0
  204. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.styles.js +16 -0
  205. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.types.d.ts +50 -0
  206. package/dist/react-ui/ui/DropdownMenu/DropdownMenu.types.d.ts.map +1 -0
  207. package/dist/react-ui/ui/DropdownMenu/index.d.ts +50 -0
  208. package/dist/react-ui/ui/DropdownMenu/index.d.ts.map +1 -0
  209. package/dist/{components/ui/dropdown-menu.js → react-ui/ui/DropdownMenu/index.js} +43 -13
  210. package/dist/react-ui/ui/Field/Field.styles.d.ts +11 -0
  211. package/dist/react-ui/ui/Field/Field.styles.d.ts.map +1 -0
  212. package/dist/react-ui/ui/Field/Field.styles.js +27 -0
  213. package/dist/react-ui/ui/Field/Field.types.d.ts +39 -0
  214. package/dist/react-ui/ui/Field/Field.types.d.ts.map +1 -0
  215. package/dist/react-ui/ui/Field/index.d.ts +56 -0
  216. package/dist/react-ui/ui/Field/index.d.ts.map +1 -0
  217. package/dist/{components/ui/field.js → react-ui/ui/Field/index.js} +54 -22
  218. package/dist/react-ui/ui/Input/Input.styles.d.ts +7 -0
  219. package/dist/react-ui/ui/Input/Input.styles.d.ts.map +1 -0
  220. package/dist/react-ui/ui/Input/Input.styles.js +5 -0
  221. package/dist/react-ui/ui/Input/Input.types.d.ts +9 -0
  222. package/dist/react-ui/ui/Input/Input.types.d.ts.map +1 -0
  223. package/dist/react-ui/ui/Input/index.d.ts +17 -0
  224. package/dist/react-ui/ui/Input/index.d.ts.map +1 -0
  225. package/dist/react-ui/ui/Input/index.js +29 -0
  226. package/dist/react-ui/ui/InputGroup/InputGroup.styles.d.ts +15 -0
  227. package/dist/react-ui/ui/InputGroup/InputGroup.styles.d.ts.map +1 -0
  228. package/dist/react-ui/ui/InputGroup/InputGroup.styles.js +34 -0
  229. package/dist/react-ui/ui/InputGroup/InputGroup.types.d.ts +28 -0
  230. package/dist/react-ui/ui/InputGroup/InputGroup.types.d.ts.map +1 -0
  231. package/dist/react-ui/ui/InputGroup/index.d.ts +28 -0
  232. package/dist/react-ui/ui/InputGroup/index.d.ts.map +1 -0
  233. package/dist/react-ui/ui/InputGroup/index.js +81 -0
  234. package/dist/react-ui/ui/Label/Label.styles.d.ts +6 -0
  235. package/dist/react-ui/ui/Label/Label.styles.d.ts.map +1 -0
  236. package/dist/react-ui/ui/Label/Label.styles.js +5 -0
  237. package/dist/react-ui/ui/Label/Label.types.d.ts +8 -0
  238. package/dist/react-ui/ui/Label/Label.types.d.ts.map +1 -0
  239. package/dist/react-ui/ui/Label/index.d.ts +14 -0
  240. package/dist/react-ui/ui/Label/index.d.ts.map +1 -0
  241. package/dist/react-ui/ui/Label/index.js +24 -0
  242. package/dist/react-ui/ui/Menu/Menu.styles.d.ts +42 -0
  243. package/dist/react-ui/ui/Menu/Menu.styles.d.ts.map +1 -0
  244. package/dist/react-ui/ui/Menu/Menu.styles.js +32 -0
  245. package/dist/react-ui/ui/Menu/Menu.types.d.ts +328 -0
  246. package/dist/react-ui/ui/Menu/Menu.types.d.ts.map +1 -0
  247. package/dist/react-ui/ui/Menu/index.d.ts +354 -0
  248. package/dist/react-ui/ui/Menu/index.d.ts.map +1 -0
  249. package/dist/react-ui/ui/Menu/index.js +636 -0
  250. package/dist/react-ui/ui/Popover/Popover.styles.d.ts +23 -0
  251. package/dist/react-ui/ui/Popover/Popover.styles.d.ts.map +1 -0
  252. package/dist/react-ui/ui/Popover/Popover.styles.js +26 -0
  253. package/dist/react-ui/ui/Popover/Popover.types.d.ts +204 -0
  254. package/dist/react-ui/ui/Popover/Popover.types.d.ts.map +1 -0
  255. package/dist/react-ui/ui/Popover/index.d.ts +133 -0
  256. package/dist/react-ui/ui/Popover/index.d.ts.map +1 -0
  257. package/dist/react-ui/ui/Popover/index.js +237 -0
  258. package/dist/react-ui/ui/Progress/Progress.styles.d.ts +28 -0
  259. package/dist/react-ui/ui/Progress/Progress.styles.d.ts.map +1 -0
  260. package/dist/react-ui/ui/Progress/Progress.styles.js +30 -0
  261. package/dist/react-ui/ui/Progress/Progress.types.d.ts +148 -0
  262. package/dist/react-ui/ui/Progress/Progress.types.d.ts.map +1 -0
  263. package/dist/react-ui/ui/Progress/index.d.ts +111 -0
  264. package/dist/react-ui/ui/Progress/index.d.ts.map +1 -0
  265. package/dist/react-ui/ui/Progress/index.js +170 -0
  266. package/dist/react-ui/ui/Select/Select.styles.d.ts +7 -0
  267. package/dist/react-ui/ui/Select/Select.styles.d.ts.map +1 -0
  268. package/dist/react-ui/ui/Select/Select.styles.js +15 -0
  269. package/dist/react-ui/ui/Select/Select.types.d.ts +28 -0
  270. package/dist/react-ui/ui/Select/Select.types.d.ts.map +1 -0
  271. package/dist/react-ui/ui/Select/index.d.ts +38 -0
  272. package/dist/react-ui/ui/Select/index.d.ts.map +1 -0
  273. package/dist/{components/ui/select.js → react-ui/ui/Select/index.js} +34 -12
  274. package/dist/react-ui/ui/Separator/Separator.styles.d.ts +6 -0
  275. package/dist/react-ui/ui/Separator/Separator.styles.d.ts.map +1 -0
  276. package/dist/react-ui/ui/Separator/Separator.styles.js +5 -0
  277. package/dist/react-ui/ui/Separator/Separator.types.d.ts +9 -0
  278. package/dist/react-ui/ui/Separator/Separator.types.d.ts.map +1 -0
  279. package/dist/react-ui/ui/Separator/index.d.ts +16 -0
  280. package/dist/react-ui/ui/Separator/index.d.ts.map +1 -0
  281. package/dist/react-ui/ui/Separator/index.js +29 -0
  282. package/dist/react-ui/ui/Switch/Switch.styles.d.ts +26 -0
  283. package/dist/react-ui/ui/Switch/Switch.styles.d.ts.map +1 -0
  284. package/dist/react-ui/ui/Switch/Switch.styles.js +41 -0
  285. package/dist/react-ui/ui/Switch/Switch.types.d.ts +130 -0
  286. package/dist/react-ui/ui/Switch/Switch.types.d.ts.map +1 -0
  287. package/dist/react-ui/ui/Switch/index.d.ts +79 -0
  288. package/dist/react-ui/ui/Switch/index.d.ts.map +1 -0
  289. package/dist/react-ui/ui/Switch/index.js +199 -0
  290. package/dist/react-ui/ui/Tabs/Tabs.styles.d.ts +43 -0
  291. package/dist/react-ui/ui/Tabs/Tabs.styles.d.ts.map +1 -0
  292. package/dist/react-ui/ui/Tabs/Tabs.styles.js +26 -0
  293. package/dist/react-ui/ui/Tabs/Tabs.types.d.ts +201 -0
  294. package/dist/react-ui/ui/Tabs/Tabs.types.d.ts.map +1 -0
  295. package/dist/react-ui/ui/Tabs/index.d.ts +141 -0
  296. package/dist/react-ui/ui/Tabs/index.d.ts.map +1 -0
  297. package/dist/react-ui/ui/Tabs/index.js +308 -0
  298. package/dist/react-ui/ui/Textarea/Textarea.styles.d.ts +6 -0
  299. package/dist/react-ui/ui/Textarea/Textarea.styles.d.ts.map +1 -0
  300. package/dist/react-ui/ui/Textarea/Textarea.styles.js +5 -0
  301. package/dist/react-ui/ui/Textarea/Textarea.types.d.ts +8 -0
  302. package/dist/react-ui/ui/Textarea/Textarea.types.d.ts.map +1 -0
  303. package/dist/react-ui/ui/Textarea/index.d.ts +14 -0
  304. package/dist/react-ui/ui/Textarea/index.d.ts.map +1 -0
  305. package/dist/react-ui/ui/Textarea/index.js +24 -0
  306. package/dist/react-ui/ui/Tooltip/Tooltip.styles.d.ts +23 -0
  307. package/dist/react-ui/ui/Tooltip/Tooltip.styles.d.ts.map +1 -0
  308. package/dist/react-ui/ui/Tooltip/Tooltip.styles.js +26 -0
  309. package/dist/react-ui/ui/Tooltip/Tooltip.types.d.ts +203 -0
  310. package/dist/react-ui/ui/Tooltip/Tooltip.types.d.ts.map +1 -0
  311. package/dist/react-ui/ui/Tooltip/index.d.ts +110 -0
  312. package/dist/react-ui/ui/Tooltip/index.d.ts.map +1 -0
  313. package/dist/react-ui/ui/Tooltip/index.js +219 -0
  314. package/dist/react-ui/ui/index.d.ts +31 -0
  315. package/dist/react-ui/ui/index.d.ts.map +1 -0
  316. package/dist/react-ui/ui/index.js +37 -0
  317. package/package.json +12 -9
  318. package/src/core/index.ts +7 -0
  319. package/src/core/types.ts +82 -0
  320. package/src/index.ts +20 -14
  321. package/src/react-ui/components/MorphingPopover/MorphingPopover.types.ts +49 -0
  322. package/src/react-ui/components/MorphingPopover/index.tsx +186 -0
  323. package/src/react-ui/components/index.ts +9 -0
  324. package/src/{hooks/use-auto-height.tsx → react-ui/hooks/Animation/UseAutoHeight.tsx} +24 -3
  325. package/src/react-ui/hooks/DOM/UseIsInView.tsx +44 -0
  326. package/src/{hooks/use-controlled-state.tsx → react-ui/hooks/State/UseControlledState.tsx} +26 -2
  327. package/src/{hooks/use-data-state.tsx → react-ui/hooks/State/UseDataState.tsx} +22 -0
  328. package/src/react-ui/hooks/index.ts +17 -0
  329. package/src/react-ui/icons/index.ts +12 -0
  330. package/src/{icons → react-ui/icons}/lucide-animated/activity.tsx +1 -1
  331. package/src/{icons → react-ui/icons}/lucide-animated/bell-electric.tsx +1 -1
  332. package/src/{icons → react-ui/icons}/lucide-animated/bell.tsx +1 -1
  333. package/src/{icons → react-ui/icons}/lucide-animated/bot.tsx +1 -1
  334. package/src/{icons → react-ui/icons}/lucide-animated/box.tsx +1 -1
  335. package/src/{icons → react-ui/icons}/lucide-animated/circle-check.tsx +1 -1
  336. package/src/{icons → react-ui/icons}/lucide-animated/delete.tsx +1 -1
  337. package/src/{icons → react-ui/icons}/lucide-animated/download.tsx +1 -1
  338. package/src/{icons → react-ui/icons}/lucide-animated/home.tsx +1 -1
  339. package/src/react-ui/icons/lucide-animated/index.ts +38 -0
  340. package/src/{icons → react-ui/icons}/lucide-animated/layout-panel-top.tsx +1 -1
  341. package/src/{icons → react-ui/icons}/lucide-animated/plus.tsx +1 -1
  342. package/src/{icons → react-ui/icons}/lucide-animated/search.tsx +1 -1
  343. package/src/{icons → react-ui/icons}/lucide-animated/settings.tsx +1 -1
  344. package/src/{icons → react-ui/icons}/lucide-animated/trending-down.tsx +1 -1
  345. package/src/{icons → react-ui/icons}/lucide-animated/trending-up.tsx +1 -1
  346. package/src/{icons → react-ui/icons}/lucide-animated/x.tsx +1 -1
  347. package/src/react-ui/index.ts +30 -0
  348. package/src/{lib → react-ui/lib}/get-strict-context.tsx +20 -0
  349. package/src/react-ui/lib/index.ts +8 -0
  350. package/src/{lib → react-ui/lib}/utils.ts +2 -2
  351. package/src/{components/animate-ui/primitives/effects/auto-height.tsx → react-ui/primitives/AutoHeight/index.tsx} +24 -5
  352. package/src/{components/animate-ui/primitives/texts/counting-number.tsx → react-ui/primitives/CountingNumber/index.tsx} +35 -7
  353. package/src/react-ui/primitives/Highlight/Highlight.types.ts +136 -0
  354. package/src/{components/animate-ui/primitives/effects/highlight.tsx → react-ui/primitives/Highlight/index.tsx} +60 -123
  355. package/src/{components/animate-ui/primitives/animate/slot.tsx → react-ui/primitives/Slot/index.tsx} +43 -11
  356. package/src/react-ui/primitives/index.ts +13 -0
  357. package/src/react-ui/ui/Accordion/Accordion.styles.ts +72 -0
  358. package/src/react-ui/ui/Accordion/Accordion.types.ts +199 -0
  359. package/src/react-ui/ui/Accordion/index.tsx +362 -0
  360. package/src/react-ui/ui/AlertDialog/AlertDialog.styles.ts +38 -0
  361. package/src/react-ui/ui/AlertDialog/AlertDialog.types.ts +296 -0
  362. package/src/react-ui/ui/AlertDialog/index.tsx +540 -0
  363. package/src/react-ui/ui/Badge/Badge.styles.ts +43 -0
  364. package/src/react-ui/ui/Badge/Badge.types.ts +26 -0
  365. package/src/react-ui/ui/Badge/index.tsx +34 -0
  366. package/src/react-ui/ui/Button/Button.styles.ts +57 -0
  367. package/src/react-ui/ui/Button/Button.types.ts +63 -0
  368. package/src/react-ui/ui/Button/index.tsx +155 -0
  369. package/src/react-ui/ui/Card/Card.styles.ts +32 -0
  370. package/src/react-ui/ui/Card/Card.types.ts +39 -0
  371. package/src/react-ui/ui/Card/index.tsx +130 -0
  372. package/src/react-ui/ui/Checkbox/Checkbox.styles.ts +40 -0
  373. package/src/react-ui/ui/Checkbox/Checkbox.types.ts +98 -0
  374. package/src/react-ui/ui/Checkbox/index.tsx +233 -0
  375. package/src/react-ui/ui/Combobox/Combobox.styles.ts +34 -0
  376. package/src/react-ui/ui/Combobox/Combobox.types.ts +89 -0
  377. package/src/react-ui/ui/Combobox/index.tsx +331 -0
  378. package/src/react-ui/ui/CornerBracket/CornerBracket.styles.ts +38 -0
  379. package/src/react-ui/ui/CornerBracket/CornerBracket.types.ts +15 -0
  380. package/src/react-ui/ui/CornerBracket/index.tsx +49 -0
  381. package/src/react-ui/ui/Dialog/Dialog.styles.ts +59 -0
  382. package/src/react-ui/ui/Dialog/Dialog.types.ts +284 -0
  383. package/src/react-ui/ui/Dialog/index.tsx +452 -0
  384. package/src/react-ui/ui/DropdownMenu/DropdownMenu.styles.ts +35 -0
  385. package/src/react-ui/ui/DropdownMenu/DropdownMenu.types.ts +81 -0
  386. package/src/react-ui/ui/DropdownMenu/index.tsx +300 -0
  387. package/src/react-ui/ui/Field/Field.styles.ts +47 -0
  388. package/src/react-ui/ui/Field/Field.types.ts +60 -0
  389. package/src/react-ui/ui/Field/index.tsx +254 -0
  390. package/src/{components/ui/input.tsx → react-ui/ui/Input/Input.styles.ts} +8 -17
  391. package/src/react-ui/ui/Input/Input.types.ts +10 -0
  392. package/src/react-ui/ui/Input/index.tsx +32 -0
  393. package/src/react-ui/ui/InputGroup/InputGroup.styles.ts +53 -0
  394. package/src/react-ui/ui/InputGroup/InputGroup.types.ts +44 -0
  395. package/src/react-ui/ui/InputGroup/index.tsx +147 -0
  396. package/src/react-ui/ui/Label/Label.styles.ts +10 -0
  397. package/src/react-ui/ui/Label/Label.types.ts +9 -0
  398. package/src/react-ui/ui/Label/index.tsx +27 -0
  399. package/src/react-ui/ui/Menu/Menu.styles.ts +71 -0
  400. package/src/react-ui/ui/Menu/Menu.types.ts +425 -0
  401. package/src/react-ui/ui/Menu/index.tsx +900 -0
  402. package/src/react-ui/ui/Popover/Popover.styles.ts +55 -0
  403. package/src/react-ui/ui/Popover/Popover.types.ts +261 -0
  404. package/src/react-ui/ui/Popover/index.tsx +422 -0
  405. package/src/react-ui/ui/Progress/Progress.styles.ts +36 -0
  406. package/src/react-ui/ui/Progress/Progress.types.ts +162 -0
  407. package/src/react-ui/ui/Progress/index.tsx +254 -0
  408. package/src/react-ui/ui/Select/Select.styles.ts +30 -0
  409. package/src/react-ui/ui/Select/Select.types.ts +51 -0
  410. package/src/react-ui/ui/Select/index.tsx +225 -0
  411. package/src/react-ui/ui/Separator/Separator.styles.ts +10 -0
  412. package/src/react-ui/ui/Separator/Separator.types.ts +10 -0
  413. package/src/react-ui/ui/Separator/index.tsx +37 -0
  414. package/src/react-ui/ui/Switch/Switch.styles.ts +50 -0
  415. package/src/react-ui/ui/Switch/Switch.types.ts +155 -0
  416. package/src/react-ui/ui/Switch/index.tsx +253 -0
  417. package/src/react-ui/ui/Tabs/Tabs.styles.ts +60 -0
  418. package/src/react-ui/ui/Tabs/Tabs.types.ts +250 -0
  419. package/src/react-ui/ui/Tabs/index.tsx +421 -0
  420. package/src/{components/ui/textarea.tsx → react-ui/ui/Textarea/Textarea.styles.ts} +7 -15
  421. package/src/react-ui/ui/Textarea/Textarea.types.ts +9 -0
  422. package/src/react-ui/ui/Textarea/index.tsx +27 -0
  423. package/src/react-ui/ui/Tooltip/Tooltip.styles.ts +43 -0
  424. package/src/react-ui/ui/Tooltip/Tooltip.types.ts +253 -0
  425. package/src/react-ui/ui/Tooltip/index.tsx +394 -0
  426. package/src/react-ui/ui/index.ts +34 -0
  427. package/dist/components/animate-ui/primitives/animate/slot.d.ts +0 -18
  428. package/dist/components/animate-ui/primitives/animate/slot.d.ts.map +0 -1
  429. package/dist/components/animate-ui/primitives/base/accordion.d.ts +0 -22
  430. package/dist/components/animate-ui/primitives/base/accordion.d.ts.map +0 -1
  431. package/dist/components/animate-ui/primitives/base/accordion.js +0 -132
  432. package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts +0 -33
  433. package/dist/components/animate-ui/primitives/base/alert-dialog.d.ts.map +0 -1
  434. package/dist/components/animate-ui/primitives/base/alert-dialog.js +0 -132
  435. package/dist/components/animate-ui/primitives/base/checkbox.d.ts +0 -15
  436. package/dist/components/animate-ui/primitives/base/checkbox.d.ts.map +0 -1
  437. package/dist/components/animate-ui/primitives/base/checkbox.js +0 -101
  438. package/dist/components/animate-ui/primitives/base/dialog.d.ts +0 -33
  439. package/dist/components/animate-ui/primitives/base/dialog.d.ts.map +0 -1
  440. package/dist/components/animate-ui/primitives/base/dialog.js +0 -132
  441. package/dist/components/animate-ui/primitives/base/menu.d.ts +0 -60
  442. package/dist/components/animate-ui/primitives/base/menu.d.ts.map +0 -1
  443. package/dist/components/animate-ui/primitives/base/menu.js +0 -266
  444. package/dist/components/animate-ui/primitives/base/popover.d.ts +0 -30
  445. package/dist/components/animate-ui/primitives/base/popover.d.ts.map +0 -1
  446. package/dist/components/animate-ui/primitives/base/popover.js +0 -109
  447. package/dist/components/animate-ui/primitives/base/progress.d.ts +0 -297
  448. package/dist/components/animate-ui/primitives/base/progress.d.ts.map +0 -1
  449. package/dist/components/animate-ui/primitives/base/progress.js +0 -63
  450. package/dist/components/animate-ui/primitives/base/switch.d.ts +0 -23
  451. package/dist/components/animate-ui/primitives/base/switch.d.ts.map +0 -1
  452. package/dist/components/animate-ui/primitives/base/switch.js +0 -90
  453. package/dist/components/animate-ui/primitives/base/tabs.d.ts +0 -33
  454. package/dist/components/animate-ui/primitives/base/tabs.d.ts.map +0 -1
  455. package/dist/components/animate-ui/primitives/base/tabs.js +0 -132
  456. package/dist/components/animate-ui/primitives/base/tooltip.d.ts +0 -31
  457. package/dist/components/animate-ui/primitives/base/tooltip.d.ts.map +0 -1
  458. package/dist/components/animate-ui/primitives/base/tooltip.js +0 -116
  459. package/dist/components/animate-ui/primitives/effects/auto-height.d.ts +0 -12
  460. package/dist/components/animate-ui/primitives/effects/auto-height.d.ts.map +0 -1
  461. package/dist/components/animate-ui/primitives/effects/auto-height.js +0 -37
  462. package/dist/components/animate-ui/primitives/effects/highlight.d.ts +0 -92
  463. package/dist/components/animate-ui/primitives/effects/highlight.d.ts.map +0 -1
  464. package/dist/components/animate-ui/primitives/texts/counting-number.d.ts +0 -16
  465. package/dist/components/animate-ui/primitives/texts/counting-number.d.ts.map +0 -1
  466. package/dist/components/ui/accordion.d.ts +0 -9
  467. package/dist/components/ui/accordion.d.ts.map +0 -1
  468. package/dist/components/ui/accordion.js +0 -1
  469. package/dist/components/ui/alert-dialog.d.ts +0 -9
  470. package/dist/components/ui/alert-dialog.d.ts.map +0 -1
  471. package/dist/components/ui/alert-dialog.js +0 -1
  472. package/dist/components/ui/auto-height.d.ts +0 -9
  473. package/dist/components/ui/auto-height.d.ts.map +0 -1
  474. package/dist/components/ui/auto-height.js +0 -1
  475. package/dist/components/ui/badge/badge.d.ts +0 -37
  476. package/dist/components/ui/badge/badge.d.ts.map +0 -1
  477. package/dist/components/ui/badge/badge.js +0 -52
  478. package/dist/components/ui/badge/badge.styles.d.ts +0 -23
  479. package/dist/components/ui/badge/badge.styles.d.ts.map +0 -1
  480. package/dist/components/ui/badge/badge.types.d.ts +0 -38
  481. package/dist/components/ui/badge/badge.types.d.ts.map +0 -1
  482. package/dist/components/ui/badge/index.d.ts +0 -8
  483. package/dist/components/ui/badge/index.d.ts.map +0 -1
  484. package/dist/components/ui/badge/index.js +0 -2
  485. package/dist/components/ui/button/button.d.ts +0 -79
  486. package/dist/components/ui/button/button.d.ts.map +0 -1
  487. package/dist/components/ui/button/button.js +0 -161
  488. package/dist/components/ui/button/button.styles.d.ts +0 -33
  489. package/dist/components/ui/button/button.styles.d.ts.map +0 -1
  490. package/dist/components/ui/button/button.types.d.ts +0 -103
  491. package/dist/components/ui/button/button.types.d.ts.map +0 -1
  492. package/dist/components/ui/button/index.d.ts +0 -7
  493. package/dist/components/ui/button/index.d.ts.map +0 -1
  494. package/dist/components/ui/button/index.js +0 -2
  495. package/dist/components/ui/card.d.ts +0 -14
  496. package/dist/components/ui/card.d.ts.map +0 -1
  497. package/dist/components/ui/card.js +0 -67
  498. package/dist/components/ui/checkbox.d.ts +0 -9
  499. package/dist/components/ui/checkbox.d.ts.map +0 -1
  500. package/dist/components/ui/checkbox.js +0 -1
  501. package/dist/components/ui/combobox.d.ts +0 -25
  502. package/dist/components/ui/combobox.d.ts.map +0 -1
  503. package/dist/components/ui/corner-bracket.d.ts +0 -34
  504. package/dist/components/ui/corner-bracket.d.ts.map +0 -1
  505. package/dist/components/ui/corner-bracket.js +0 -70
  506. package/dist/components/ui/counting-number.d.ts +0 -9
  507. package/dist/components/ui/counting-number.d.ts.map +0 -1
  508. package/dist/components/ui/counting-number.js +0 -1
  509. package/dist/components/ui/dialog.d.ts +0 -9
  510. package/dist/components/ui/dialog.d.ts.map +0 -1
  511. package/dist/components/ui/dialog.js +0 -1
  512. package/dist/components/ui/dropdown-menu.d.ts +0 -30
  513. package/dist/components/ui/dropdown-menu.d.ts.map +0 -1
  514. package/dist/components/ui/field.d.ts +0 -25
  515. package/dist/components/ui/field.d.ts.map +0 -1
  516. package/dist/components/ui/highlight.d.ts +0 -9
  517. package/dist/components/ui/highlight.d.ts.map +0 -1
  518. package/dist/components/ui/highlight.js +0 -1
  519. package/dist/components/ui/index.d.ts +0 -36
  520. package/dist/components/ui/index.d.ts.map +0 -1
  521. package/dist/components/ui/index.js +0 -47
  522. package/dist/components/ui/input-group.d.ts +0 -19
  523. package/dist/components/ui/input-group.d.ts.map +0 -1
  524. package/dist/components/ui/input-group.js +0 -84
  525. package/dist/components/ui/input.d.ts +0 -4
  526. package/dist/components/ui/input.d.ts.map +0 -1
  527. package/dist/components/ui/input.js +0 -17
  528. package/dist/components/ui/label.d.ts +0 -4
  529. package/dist/components/ui/label.d.ts.map +0 -1
  530. package/dist/components/ui/label.js +0 -15
  531. package/dist/components/ui/menu.d.ts +0 -9
  532. package/dist/components/ui/menu.d.ts.map +0 -1
  533. package/dist/components/ui/menu.js +0 -1
  534. package/dist/components/ui/morphing-popover/index.d.ts +0 -10
  535. package/dist/components/ui/morphing-popover/index.d.ts.map +0 -1
  536. package/dist/components/ui/morphing-popover/index.js +0 -1
  537. package/dist/components/ui/morphing-popover/morphing-popover.d.ts +0 -54
  538. package/dist/components/ui/morphing-popover/morphing-popover.d.ts.map +0 -1
  539. package/dist/components/ui/morphing-popover/morphing-popover.module.js +0 -5
  540. package/dist/components/ui/popover.d.ts +0 -9
  541. package/dist/components/ui/popover.d.ts.map +0 -1
  542. package/dist/components/ui/popover.js +0 -1
  543. package/dist/components/ui/progress.d.ts +0 -9
  544. package/dist/components/ui/progress.d.ts.map +0 -1
  545. package/dist/components/ui/progress.js +0 -1
  546. package/dist/components/ui/select.d.ts +0 -16
  547. package/dist/components/ui/select.d.ts.map +0 -1
  548. package/dist/components/ui/separator.d.ts +0 -4
  549. package/dist/components/ui/separator.d.ts.map +0 -1
  550. package/dist/components/ui/separator.js +0 -18
  551. package/dist/components/ui/slot.d.ts +0 -9
  552. package/dist/components/ui/slot.d.ts.map +0 -1
  553. package/dist/components/ui/slot.js +0 -1
  554. package/dist/components/ui/switch.d.ts +0 -9
  555. package/dist/components/ui/switch.d.ts.map +0 -1
  556. package/dist/components/ui/switch.js +0 -1
  557. package/dist/components/ui/tabs.d.ts +0 -9
  558. package/dist/components/ui/tabs.d.ts.map +0 -1
  559. package/dist/components/ui/tabs.js +0 -1
  560. package/dist/components/ui/textarea.d.ts +0 -4
  561. package/dist/components/ui/textarea.d.ts.map +0 -1
  562. package/dist/components/ui/textarea.js +0 -15
  563. package/dist/components/ui/tooltip.d.ts +0 -9
  564. package/dist/components/ui/tooltip.d.ts.map +0 -1
  565. package/dist/components/ui/tooltip.js +0 -1
  566. package/dist/hooks/index.d.ts +0 -10
  567. package/dist/hooks/index.d.ts.map +0 -1
  568. package/dist/hooks/index.js +0 -4
  569. package/dist/hooks/use-auto-height.d.ts +0 -11
  570. package/dist/hooks/use-auto-height.d.ts.map +0 -1
  571. package/dist/hooks/use-controlled-state.d.ts +0 -9
  572. package/dist/hooks/use-controlled-state.d.ts.map +0 -1
  573. package/dist/hooks/use-controlled-state.js +0 -17
  574. package/dist/hooks/use-data-state.d.ts +0 -5
  575. package/dist/hooks/use-data-state.d.ts.map +0 -1
  576. package/dist/hooks/use-is-in-view.d.ts +0 -13
  577. package/dist/hooks/use-is-in-view.d.ts.map +0 -1
  578. package/dist/hooks/use-is-in-view.js +0 -20
  579. package/dist/icons/index.d.ts +0 -8
  580. package/dist/icons/index.d.ts.map +0 -1
  581. package/dist/icons/lucide-animated/activity.d.ts.map +0 -1
  582. package/dist/icons/lucide-animated/arrow-down-to-line.d.ts.map +0 -1
  583. package/dist/icons/lucide-animated/arrow-up.d.ts.map +0 -1
  584. package/dist/icons/lucide-animated/bell-electric.d.ts.map +0 -1
  585. package/dist/icons/lucide-animated/bell.d.ts.map +0 -1
  586. package/dist/icons/lucide-animated/bot.d.ts.map +0 -1
  587. package/dist/icons/lucide-animated/box.d.ts.map +0 -1
  588. package/dist/icons/lucide-animated/check.d.ts.map +0 -1
  589. package/dist/icons/lucide-animated/circle-check.d.ts.map +0 -1
  590. package/dist/icons/lucide-animated/delete.d.ts.map +0 -1
  591. package/dist/icons/lucide-animated/download.d.ts.map +0 -1
  592. package/dist/icons/lucide-animated/edit-2.d.ts.map +0 -1
  593. package/dist/icons/lucide-animated/globe.d.ts.map +0 -1
  594. package/dist/icons/lucide-animated/home.d.ts.map +0 -1
  595. package/dist/icons/lucide-animated/index.d.ts +0 -38
  596. package/dist/icons/lucide-animated/index.d.ts.map +0 -1
  597. package/dist/icons/lucide-animated/layers.d.ts.map +0 -1
  598. package/dist/icons/lucide-animated/layout-panel-top.d.ts.map +0 -1
  599. package/dist/icons/lucide-animated/list.d.ts.map +0 -1
  600. package/dist/icons/lucide-animated/package.d.ts.map +0 -1
  601. package/dist/icons/lucide-animated/palette.d.ts.map +0 -1
  602. package/dist/icons/lucide-animated/plus.d.ts.map +0 -1
  603. package/dist/icons/lucide-animated/refresh-cw.d.ts.map +0 -1
  604. package/dist/icons/lucide-animated/rocket.d.ts.map +0 -1
  605. package/dist/icons/lucide-animated/save.d.ts.map +0 -1
  606. package/dist/icons/lucide-animated/search.d.ts.map +0 -1
  607. package/dist/icons/lucide-animated/settings.d.ts.map +0 -1
  608. package/dist/icons/lucide-animated/terminal.d.ts.map +0 -1
  609. package/dist/icons/lucide-animated/trash-2.d.ts.map +0 -1
  610. package/dist/icons/lucide-animated/trending-down.d.ts.map +0 -1
  611. package/dist/icons/lucide-animated/trending-up.d.ts.map +0 -1
  612. package/dist/icons/lucide-animated/type.d.ts.map +0 -1
  613. package/dist/icons/lucide-animated/upload.d.ts.map +0 -1
  614. package/dist/icons/lucide-animated/x.d.ts.map +0 -1
  615. package/dist/lib/get-strict-context.d.ts +0 -10
  616. package/dist/lib/get-strict-context.d.ts.map +0 -1
  617. package/dist/lib/get-strict-context.js +0 -20
  618. package/dist/lib/utils.d.ts.map +0 -1
  619. package/src/components/animate-ui/primitives/base/accordion.tsx +0 -179
  620. package/src/components/animate-ui/primitives/base/alert-dialog.tsx +0 -218
  621. package/src/components/animate-ui/primitives/base/checkbox.tsx +0 -153
  622. package/src/components/animate-ui/primitives/base/dialog.tsx +0 -203
  623. package/src/components/animate-ui/primitives/base/menu.tsx +0 -463
  624. package/src/components/animate-ui/primitives/base/popover.tsx +0 -167
  625. package/src/components/animate-ui/primitives/base/progress.tsx +0 -103
  626. package/src/components/animate-ui/primitives/base/switch.tsx +0 -158
  627. package/src/components/animate-ui/primitives/base/tabs.tsx +0 -202
  628. package/src/components/animate-ui/primitives/base/tooltip.tsx +0 -209
  629. package/src/components/ui/accordion.tsx +0 -9
  630. package/src/components/ui/alert-dialog.tsx +0 -9
  631. package/src/components/ui/auto-height.tsx +0 -9
  632. package/src/components/ui/badge/badge.styles.ts +0 -46
  633. package/src/components/ui/badge/badge.tsx +0 -52
  634. package/src/components/ui/badge/badge.types.ts +0 -41
  635. package/src/components/ui/badge/index.ts +0 -8
  636. package/src/components/ui/button/button.styles.ts +0 -66
  637. package/src/components/ui/button/button.tsx +0 -209
  638. package/src/components/ui/button/button.types.ts +0 -125
  639. package/src/components/ui/button/index.ts +0 -7
  640. package/src/components/ui/card.tsx +0 -108
  641. package/src/components/ui/checkbox.tsx +0 -9
  642. package/src/components/ui/combobox.tsx +0 -293
  643. package/src/components/ui/corner-bracket.tsx +0 -85
  644. package/src/components/ui/counting-number.tsx +0 -9
  645. package/src/components/ui/dialog.tsx +0 -9
  646. package/src/components/ui/dropdown-menu.tsx +0 -261
  647. package/src/components/ui/field.tsx +0 -227
  648. package/src/components/ui/highlight.tsx +0 -9
  649. package/src/components/ui/index.ts +0 -43
  650. package/src/components/ui/input-group.tsx +0 -149
  651. package/src/components/ui/label.tsx +0 -18
  652. package/src/components/ui/menu.tsx +0 -9
  653. package/src/components/ui/morphing-popover/index.ts +0 -10
  654. package/src/components/ui/morphing-popover/morphing-popover.tsx +0 -183
  655. package/src/components/ui/popover.tsx +0 -9
  656. package/src/components/ui/progress.tsx +0 -9
  657. package/src/components/ui/select.tsx +0 -190
  658. package/src/components/ui/separator.tsx +0 -25
  659. package/src/components/ui/slot.tsx +0 -9
  660. package/src/components/ui/switch.tsx +0 -9
  661. package/src/components/ui/tabs.tsx +0 -9
  662. package/src/components/ui/tooltip.tsx +0 -9
  663. package/src/hooks/index.ts +0 -10
  664. package/src/hooks/use-is-in-view.tsx +0 -25
  665. package/src/icons/index.ts +0 -12
  666. package/src/icons/lucide-animated/index.ts +0 -38
  667. /package/dist/{components/ui/morphing-popover/morphing-popover.module-CE9GIgKo.css → react-ui/components/MorphingPopover/morphing-popover.module-CgbYV_HS.css} +0 -0
  668. /package/dist/{icons → react-ui/icons}/index.js +0 -0
  669. /package/dist/{icons → react-ui/icons}/lucide-animated/activity.d.ts +0 -0
  670. /package/dist/{icons → react-ui/icons}/lucide-animated/arrow-down-to-line.d.ts +0 -0
  671. /package/dist/{icons → react-ui/icons}/lucide-animated/arrow-up.d.ts +0 -0
  672. /package/dist/{icons → react-ui/icons}/lucide-animated/bell-electric.d.ts +0 -0
  673. /package/dist/{icons → react-ui/icons}/lucide-animated/bell.d.ts +0 -0
  674. /package/dist/{icons → react-ui/icons}/lucide-animated/bot.d.ts +0 -0
  675. /package/dist/{icons → react-ui/icons}/lucide-animated/box.d.ts +0 -0
  676. /package/dist/{icons → react-ui/icons}/lucide-animated/check.d.ts +0 -0
  677. /package/dist/{icons → react-ui/icons}/lucide-animated/circle-check.d.ts +0 -0
  678. /package/dist/{icons → react-ui/icons}/lucide-animated/delete.d.ts +0 -0
  679. /package/dist/{icons → react-ui/icons}/lucide-animated/download.d.ts +0 -0
  680. /package/dist/{icons → react-ui/icons}/lucide-animated/edit-2.d.ts +0 -0
  681. /package/dist/{icons → react-ui/icons}/lucide-animated/globe.d.ts +0 -0
  682. /package/dist/{icons → react-ui/icons}/lucide-animated/home.d.ts +0 -0
  683. /package/dist/{icons → react-ui/icons}/lucide-animated/index.js +0 -0
  684. /package/dist/{icons → react-ui/icons}/lucide-animated/layers.d.ts +0 -0
  685. /package/dist/{icons → react-ui/icons}/lucide-animated/layout-panel-top.d.ts +0 -0
  686. /package/dist/{icons → react-ui/icons}/lucide-animated/list.d.ts +0 -0
  687. /package/dist/{icons → react-ui/icons}/lucide-animated/package.d.ts +0 -0
  688. /package/dist/{icons → react-ui/icons}/lucide-animated/palette.d.ts +0 -0
  689. /package/dist/{icons → react-ui/icons}/lucide-animated/plus.d.ts +0 -0
  690. /package/dist/{icons → react-ui/icons}/lucide-animated/refresh-cw.d.ts +0 -0
  691. /package/dist/{icons → react-ui/icons}/lucide-animated/rocket.d.ts +0 -0
  692. /package/dist/{icons → react-ui/icons}/lucide-animated/save.d.ts +0 -0
  693. /package/dist/{icons → react-ui/icons}/lucide-animated/search.d.ts +0 -0
  694. /package/dist/{icons → react-ui/icons}/lucide-animated/settings.d.ts +0 -0
  695. /package/dist/{icons → react-ui/icons}/lucide-animated/terminal.d.ts +0 -0
  696. /package/dist/{icons → react-ui/icons}/lucide-animated/trash-2.d.ts +0 -0
  697. /package/dist/{icons → react-ui/icons}/lucide-animated/trending-down.d.ts +0 -0
  698. /package/dist/{icons → react-ui/icons}/lucide-animated/trending-up.d.ts +0 -0
  699. /package/dist/{icons → react-ui/icons}/lucide-animated/type.d.ts +0 -0
  700. /package/dist/{icons → react-ui/icons}/lucide-animated/upload.d.ts +0 -0
  701. /package/dist/{icons → react-ui/icons}/lucide-animated/x.d.ts +0 -0
  702. /package/src/{components/ui/morphing-popover → react-ui/components/MorphingPopover}/morphing-popover.module.css +0 -0
  703. /package/src/{icons → react-ui/icons}/lucide-animated/arrow-down-to-line.tsx +0 -0
  704. /package/src/{icons → react-ui/icons}/lucide-animated/arrow-up.tsx +0 -0
  705. /package/src/{icons → react-ui/icons}/lucide-animated/check.tsx +0 -0
  706. /package/src/{icons → react-ui/icons}/lucide-animated/edit-2.tsx +0 -0
  707. /package/src/{icons → react-ui/icons}/lucide-animated/globe.tsx +0 -0
  708. /package/src/{icons → react-ui/icons}/lucide-animated/layers.tsx +0 -0
  709. /package/src/{icons → react-ui/icons}/lucide-animated/list.tsx +0 -0
  710. /package/src/{icons → react-ui/icons}/lucide-animated/package.tsx +0 -0
  711. /package/src/{icons → react-ui/icons}/lucide-animated/palette.tsx +0 -0
  712. /package/src/{icons → react-ui/icons}/lucide-animated/refresh-cw.tsx +0 -0
  713. /package/src/{icons → react-ui/icons}/lucide-animated/rocket.tsx +0 -0
  714. /package/src/{icons → react-ui/icons}/lucide-animated/save.tsx +0 -0
  715. /package/src/{icons → react-ui/icons}/lucide-animated/terminal.tsx +0 -0
  716. /package/src/{icons → react-ui/icons}/lucide-animated/trash-2.tsx +0 -0
  717. /package/src/{icons → react-ui/icons}/lucide-animated/type.tsx +0 -0
  718. /package/src/{icons → react-ui/icons}/lucide-animated/upload.tsx +0 -0
package/README.md CHANGED
@@ -10,12 +10,39 @@ bun add @mks2508/mks-ui
10
10
 
11
11
  Peer dependencies: `react >= 19.2.0`, `react-dom >= 19.2.0`
12
12
 
13
+ ## Architecture
14
+
15
+ v0.2.0 uses a **framework-agnostic core + React namespace** architecture:
16
+
17
+ ```
18
+ src/
19
+ ├── core/ # Framework-agnostic types (StyleSlots, IBaseConfig)
20
+ ├── react/ # All React code
21
+ │ ├── ui/ # 23 UI components (3-file structure)
22
+ │ ├── primitives/ # Slot, Highlight, AutoHeight, CountingNumber
23
+ │ ├── components/ # MorphingPopover (CSS modules)
24
+ │ ├── hooks/ # 4 hooks (Animation/, State/, DOM/)
25
+ │ ├── icons/ # 33 lucide-animated icons + HugeIcons
26
+ │ └── lib/ # cn(), getStrictContext()
27
+ ├── index.ts # Core entry point
28
+ └── index.css # Global styles
29
+ ```
30
+
31
+ Each UI component follows a 3-file structure:
32
+ - `index.tsx` — Component implementation + exports
33
+ - `{Name}.types.ts` — TypeScript interfaces (IPrefix convention)
34
+ - `{Name}.styles.ts` — StyleSlots + CVA variants
35
+
13
36
  ## Usage
14
37
 
15
38
  ```tsx
16
- import { Button, Card, Dialog, CornerBracket } from '@mks2508/mks-ui';
17
- import { useAutoHeight } from '@mks2508/mks-ui';
18
- import { cn } from '@mks2508/mks-ui';
39
+ // React components, hooks, icons, utilities
40
+ import { Button, Card, Dialog, CornerBracket } from '@mks2508/mks-ui/react';
41
+ import { useAutoHeight, useControlledState } from '@mks2508/mks-ui/react';
42
+ import { cn } from '@mks2508/mks-ui/react';
43
+
44
+ // Core types (framework-agnostic)
45
+ import type { StyleSlots, SlotOverrides, IBaseConfig } from '@mks2508/mks-ui';
19
46
  ```
20
47
 
21
48
  ## Components
@@ -35,7 +62,7 @@ import { cn } from '@mks2508/mks-ui';
35
62
  | `Tabs` | Animated tabs with highlight |
36
63
  | `Tooltip` | Animated tooltip with arrow |
37
64
 
38
- ### Animate UI utilities
65
+ ### Primitives
39
66
 
40
67
  | Component | Description |
41
68
  |-----------|-------------|
@@ -70,11 +97,11 @@ import { cn } from '@mks2508/mks-ui';
70
97
 
71
98
  ## Icons
72
99
 
73
- 32 animated Lucide icons + HugeIcons namespace.
100
+ 33 animated Lucide icons + HugeIcons namespace.
74
101
 
75
102
  ```tsx
76
- import { Check, Search, Terminal } from '@mks2508/mks-ui';
77
- import { HugeIcons } from '@mks2508/mks-ui';
103
+ import { Check, Search, Terminal } from '@mks2508/mks-ui/react';
104
+ import { HugeIcons } from '@mks2508/mks-ui/react';
78
105
  ```
79
106
 
80
107
  ## Hooks
@@ -89,16 +116,16 @@ import { HugeIcons } from '@mks2508/mks-ui';
89
116
  ## Sub-path imports
90
117
 
91
118
  ```tsx
92
- import { Button } from '@mks2508/mks-ui/components/ui/button';
93
- import { Check } from '@mks2508/mks-ui/icons/lucide-animated/check';
94
- import { cn } from '@mks2508/mks-ui/lib/utils';
119
+ import { Button } from '@mks2508/mks-ui/react/ui/Button';
120
+ import { Check } from '@mks2508/mks-ui/react/icons/lucide-animated/check';
121
+ import { cn } from '@mks2508/mks-ui/react/lib/utils';
95
122
  ```
96
123
 
97
124
  ## Development
98
125
 
99
126
  ```bash
100
127
  bun run dev # Vite dev server
101
- bun run build # Production build
128
+ bun run build # Production build (Rolldown + tsc + tsc-alias)
102
129
  bun run typecheck # Type check
103
130
  bun run lint # ESLint
104
131
  bun run format # Prettier
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Core framework-agnostic types barrel export.
3
+ *
4
+ * @module @mks2508/mks-ui/core
5
+ */
6
+ export type { StyleSlots, SlotOverrides, IBaseConfig, MotionOverride } from './types';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/core/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,79 @@
1
+ /**
2
+ * Framework-agnostic core types for @mks2508/mks-ui.
3
+ *
4
+ * These types are shared across all framework implementations (React, Solid, etc.).
5
+ * React-specific types should go in src/react/.
6
+ *
7
+ * @module @mks2508/mks-ui/core/types
8
+ */
9
+ /**
10
+ * Maps each slot name to its default Tailwind class string.
11
+ * Used to define base styling of each visual region of a component.
12
+ *
13
+ * @example
14
+ * ```typescript
15
+ * type ButtonSlot = 'root' | 'icon' | 'label';
16
+ *
17
+ * const ButtonStyles: StyleSlots<ButtonSlot> = {
18
+ * root: 'inline-flex items-center justify-center',
19
+ * icon: 'size-4 shrink-0',
20
+ * label: 'truncate',
21
+ * };
22
+ * ```
23
+ */
24
+ export type StyleSlots<S extends string> = Record<S, string>;
25
+ /**
26
+ * Partial override for slot classes. Consumers pass this via the `slots` prop
27
+ * to add or replace Tailwind classes on specific visual regions.
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * <Accordion slots={{ trigger: 'text-cyan-400 font-bold', panel: 'bg-zinc-900/50' }} />
32
+ * ```
33
+ */
34
+ export type SlotOverrides<S extends string> = Partial<Record<S, string>>;
35
+ /**
36
+ * Base configuration interface for component behavior and animation.
37
+ * Components extend this with their specific config options.
38
+ *
39
+ * @example
40
+ * ```typescript
41
+ * export interface IAccordionConfig extends IBaseConfig {
42
+ * collapseOnBlur?: boolean;
43
+ * }
44
+ * ```
45
+ */
46
+ export interface IBaseConfig {
47
+ /**
48
+ * Animation settings.
49
+ * Components define their own defaults.
50
+ */
51
+ animation?: {
52
+ /** Duration in seconds. */
53
+ duration?: number;
54
+ /** CSS easing function or motion easing name. */
55
+ easing?: string;
56
+ };
57
+ }
58
+ /**
59
+ * Motion props for advanced animation control.
60
+ * Passed directly to internal motion element.
61
+ * When provided, overrides config.animation completely.
62
+ *
63
+ * @example
64
+ * ```tsx
65
+ * <Dialog
66
+ * motionProps={{
67
+ * initial: { opacity: 0, scale: 0.95 },
68
+ * animate: { opacity: 1, scale: 1 },
69
+ * transition: { type: 'spring', stiffness: 300 },
70
+ * }}
71
+ * />
72
+ * ```
73
+ *
74
+ * @remarks
75
+ * This is defined as an opaque type alias. The actual type is imported
76
+ * from motion/react in React-specific files to avoid core depending on motion.
77
+ */
78
+ export type MotionOverride = Record<string, unknown>;
79
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,SAAS,MAAM,IAAI,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AAE7D;;;;;;;;GAQG;AACH,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;AAEzE;;;;;;;;;;GAUG;AACH,MAAM,WAAW,WAAW;IAC3B;;;OAGG;IACH,SAAS,CAAC,EAAE;QACX,2BAA2B;QAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;QAClB,iDAAiD;QACjD,MAAM,CAAC,EAAE,MAAM,CAAC;KAChB,CAAC;CACF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC"}
package/dist/index.d.ts CHANGED
@@ -1,16 +1,28 @@
1
1
  /**
2
2
  * @mks2508/mks-ui
3
3
  *
4
- * UI component library - Shadcn/Animate UI based with custom components.
4
+ * UI component library - Framework-agnostic core types and React components.
5
+ *
6
+ * ## Entry Points
7
+ *
8
+ * ### Main Entry (Core Types)
9
+ * ```typescript
10
+ * import type { StyleSlots, SlotOverrides, IBaseConfig } from '@mks2508/mks-ui';
11
+ * ```
12
+ *
13
+ * ### React Entry (Components, Hooks, Icons, Utils)
14
+ * ```typescript
15
+ * import { Button, Card, CornerBracket } from '@mks2508/mks-ui/react';
16
+ * import { useAutoHeight } from '@mks2508/mks-ui/react';
17
+ * import { Check, Search } from '@mks2508/mks-ui/react';
18
+ * import { cn } from '@mks2508/mks-ui/react';
19
+ * ```
5
20
  *
6
21
  * @example
7
22
  * ```tsx
8
- * import { Button, Card, CornerBracket } from '@mks2508/mks-ui';
9
- * import { useAutoHeight } from '@mks2508/mks-ui';
23
+ * import type { StyleSlots } from '@mks2508/mks-ui';
24
+ * import { Button, Card, CornerBracket } from '@mks2508/mks-ui/react';
10
25
  * ```
11
26
  */
12
- export * from './lib/utils';
13
- export * from './components/ui';
14
- export * from './icons';
15
- export * from './hooks';
27
+ export * from './core';
16
28
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,cAAc,aAAa,CAAC;AAG5B,cAAc,iBAAiB,CAAC;AAGhC,cAAc,SAAS,CAAC;AAGxB,cAAc,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAGH,cAAc,QAAQ,CAAC"}
package/dist/index.js CHANGED
@@ -1,72 +0,0 @@
1
- import { cn } from "./lib/utils.js";
2
- import { useControlledState } from "./hooks/use-controlled-state.js";
3
- import { Accordion, AccordionHeader, AccordionItem, AccordionPanel, AccordionTrigger, useAccordionItem } from "./components/animate-ui/primitives/base/accordion.js";
4
- import { AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPopup, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, useAlertDialog } from "./components/animate-ui/primitives/base/alert-dialog.js";
5
- import { Checkbox, CheckboxIndicator, useCheckbox } from "./components/animate-ui/primitives/base/checkbox.js";
6
- import { Dialog, DialogBackdrop, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, useDialog } from "./components/animate-ui/primitives/base/dialog.js";
7
- import { Highlight, HighlightItem, useHighlight } from "./components/animate-ui/primitives/effects/highlight.js";
8
- import { useDataState } from "./hooks/use-data-state.js";
9
- import { Menu, MenuArrow, MenuCheckboxItem, MenuCheckboxItemIndicator, MenuGroup, MenuGroupLabel, MenuHighlight, MenuHighlightItem, MenuItem, MenuPopup, MenuPortal, MenuPositioner, MenuRadioGroup, MenuRadioItem, MenuRadioItemIndicator, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, useMenu, useMenuActiveValue } from "./components/animate-ui/primitives/base/menu.js";
10
- import { Popover, PopoverArrow, PopoverBackdrop, PopoverClose, PopoverDescription, PopoverPopup, PopoverPortal, PopoverPositioner, PopoverTitle, PopoverTrigger, usePopover } from "./components/animate-ui/primitives/base/popover.js";
11
- import { useIsInView } from "./hooks/use-is-in-view.js";
12
- import { CountingNumber } from "./components/animate-ui/primitives/texts/counting-number.js";
13
- import { Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, useProgress } from "./components/animate-ui/primitives/base/progress.js";
14
- import { Switch, SwitchIcon, SwitchThumb, useSwitch } from "./components/animate-ui/primitives/base/switch.js";
15
- import { useAutoHeight } from "./hooks/use-auto-height.js";
16
- import { Slot } from "./components/animate-ui/primitives/animate/slot.js";
17
- import { AutoHeight } from "./components/animate-ui/primitives/effects/auto-height.js";
18
- import { Tabs, TabsHighlight, TabsHighlightItem, TabsList, TabsPanel, TabsPanels, TabsTab } from "./components/animate-ui/primitives/base/tabs.js";
19
- import { Tooltip, TooltipArrow, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipProvider, TooltipTrigger, useTooltip } from "./components/animate-ui/primitives/base/tooltip.js";
20
- import { badgeVariants } from "./components/ui/badge/badge.styles.js";
21
- import { Badge } from "./components/ui/badge/badge.js";
22
- import { buttonStateStyles, buttonVariants } from "./components/ui/button/button.styles.js";
23
- import { Button } from "./components/ui/button/button.js";
24
- import { Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, cardVariants } from "./components/ui/card.js";
25
- import { Input } from "./components/ui/input.js";
26
- import { Textarea } from "./components/ui/textarea.js";
27
- import { InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea } from "./components/ui/input-group.js";
28
- import { Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, useComboboxAnchor } from "./components/ui/combobox.js";
29
- import { DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger } from "./components/ui/dropdown-menu.js";
30
- import { Label } from "./components/ui/label.js";
31
- import { Separator } from "./components/ui/separator.js";
32
- import { Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle } from "./components/ui/field.js";
33
- import { Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue } from "./components/ui/select.js";
34
- import { CornerBracket } from "./components/ui/corner-bracket.js";
35
- import { MorphingPopover, MorphingPopoverWithTarget } from "./components/ui/morphing-popover/morphing-popover.js";
36
- import "./components/ui/index.js";
37
- import { ActivityIcon } from "./icons/lucide-animated/activity.js";
38
- import { ArrowDownToLineIcon } from "./icons/lucide-animated/arrow-down-to-line.js";
39
- import { ArrowUpIcon } from "./icons/lucide-animated/arrow-up.js";
40
- import { BellIcon } from "./icons/lucide-animated/bell.js";
41
- import { BellElectricIcon } from "./icons/lucide-animated/bell-electric.js";
42
- import { BotIcon } from "./icons/lucide-animated/bot.js";
43
- import { BoxIcon } from "./icons/lucide-animated/box.js";
44
- import { Check } from "./icons/lucide-animated/check.js";
45
- import { CircleCheckIcon } from "./icons/lucide-animated/circle-check.js";
46
- import { DeleteIcon } from "./icons/lucide-animated/delete.js";
47
- import { DownloadIcon } from "./icons/lucide-animated/download.js";
48
- import { Edit2 } from "./icons/lucide-animated/edit-2.js";
49
- import { Globe } from "./icons/lucide-animated/globe.js";
50
- import { HomeIcon } from "./icons/lucide-animated/home.js";
51
- import { Layers } from "./icons/lucide-animated/layers.js";
52
- import { LayoutPanelTopIcon } from "./icons/lucide-animated/layout-panel-top.js";
53
- import { ListIcon } from "./icons/lucide-animated/list.js";
54
- import { Package } from "./icons/lucide-animated/package.js";
55
- import { Palette } from "./icons/lucide-animated/palette.js";
56
- import { PlusIcon } from "./icons/lucide-animated/plus.js";
57
- import { RefreshCw } from "./icons/lucide-animated/refresh-cw.js";
58
- import { Rocket } from "./icons/lucide-animated/rocket.js";
59
- import { Save } from "./icons/lucide-animated/save.js";
60
- import { SearchIcon } from "./icons/lucide-animated/search.js";
61
- import { SettingsIcon } from "./icons/lucide-animated/settings.js";
62
- import { TerminalIcon } from "./icons/lucide-animated/terminal.js";
63
- import { Trash2 } from "./icons/lucide-animated/trash-2.js";
64
- import { TrendingDownIcon } from "./icons/lucide-animated/trending-down.js";
65
- import { TrendingUpIcon } from "./icons/lucide-animated/trending-up.js";
66
- import { Type } from "./icons/lucide-animated/type.js";
67
- import { Upload } from "./icons/lucide-animated/upload.js";
68
- import { XIcon } from "./icons/lucide-animated/x.js";
69
- import { HugeIcons } from "./icons/index.js";
70
- import "./hooks/index.js";
71
-
72
- export { Accordion, AccordionHeader, AccordionItem, AccordionPanel, AccordionTrigger, ActivityIcon, AlertDialog, AlertDialogBackdrop, AlertDialogClose, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogPopup, AlertDialogPortal, AlertDialogTitle, AlertDialogTrigger, ArrowDownToLineIcon, ArrowUpIcon, AutoHeight, Badge, BellElectricIcon, BellIcon, BotIcon, BoxIcon, Button, Card, CardAction, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Check, Checkbox, CheckboxIndicator, CircleCheckIcon, Combobox, ComboboxChip, ComboboxChips, ComboboxChipsInput, ComboboxCollection, ComboboxContent, ComboboxEmpty, ComboboxGroup, ComboboxInput, ComboboxItem, ComboboxLabel, ComboboxList, ComboboxSeparator, ComboboxTrigger, ComboboxValue, CornerBracket, CountingNumber, DeleteIcon, Dialog, DialogBackdrop, DialogClose, DialogDescription, DialogFooter, DialogHeader, DialogPopup, DialogPortal, DialogTitle, DialogTrigger, DownloadIcon, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Edit2, Field, FieldContent, FieldDescription, FieldError, FieldGroup, FieldLabel, FieldLegend, FieldSeparator, FieldSet, FieldTitle, Globe, Highlight, HighlightItem, HomeIcon, HugeIcons, Input, InputGroup, InputGroupAddon, InputGroupButton, InputGroupInput, InputGroupText, InputGroupTextarea, Label, Layers, LayoutPanelTopIcon, ListIcon, Menu, MenuArrow, MenuCheckboxItem, MenuCheckboxItemIndicator, MenuGroup, MenuGroupLabel, MenuHighlight, MenuHighlightItem, MenuItem, MenuPopup, MenuPortal, MenuPositioner, MenuRadioGroup, MenuRadioItem, MenuRadioItemIndicator, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, MorphingPopover, MorphingPopoverWithTarget, Package, Palette, PlusIcon, Popover, PopoverArrow, PopoverBackdrop, PopoverClose, PopoverDescription, PopoverPopup, PopoverPortal, PopoverPositioner, PopoverTitle, PopoverTrigger, Progress, ProgressIndicator, ProgressLabel, ProgressTrack, ProgressValue, RefreshCw, Rocket, Save, SearchIcon, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Separator, SettingsIcon, Slot, Switch, SwitchIcon, SwitchThumb, Tabs, TabsHighlight, TabsHighlightItem, TabsList, TabsPanel, TabsPanels, TabsTab, TerminalIcon, Textarea, Tooltip, TooltipArrow, TooltipPopup, TooltipPortal, TooltipPositioner, TooltipProvider, TooltipTrigger, Trash2, TrendingDownIcon, TrendingUpIcon, Type, Upload, XIcon, badgeVariants, buttonStateStyles, buttonVariants, cardVariants, cn, useAccordionItem, useAlertDialog, useAutoHeight, useCheckbox, useComboboxAnchor, useControlledState, useDataState, useDialog, useHighlight, useIsInView, useMenu, useMenuActiveValue, usePopover, useProgress, useSwitch, useTooltip };
@@ -0,0 +1,44 @@
1
+ /**
2
+ * Props for the MorphingPopover component.
3
+ *
4
+ * @interface IMorphingPopoverProps
5
+ */
6
+ interface IMorphingPopoverProps {
7
+ /** Content to display in popover. */
8
+ content: React.ReactNode;
9
+ /** Trigger button text or icon. */
10
+ trigger?: React.ReactNode;
11
+ /** Additional CSS classes for trigger button. */
12
+ triggerClassName?: string;
13
+ /** Additional CSS classes for popover. */
14
+ popoverClassName?: string;
15
+ /** Target dimensions for the expanded popover. */
16
+ targetSize?: {
17
+ width?: number;
18
+ height?: number;
19
+ };
20
+ /** Callback when popover opens. */
21
+ onOpen?: () => void;
22
+ /** Callback when popover closes. */
23
+ onClose?: () => void;
24
+ /** Popover HTML ID. */
25
+ popoverId?: string;
26
+ }
27
+ /** Extended button props to support the Popover API attributes. */
28
+ interface IMorphingButtonProps extends React.ButtonHTMLAttributes<HTMLButtonElement> {
29
+ popovertarget?: string;
30
+ popoverTargetAction?: 'toggle' | 'show' | 'hide';
31
+ }
32
+ /**
33
+ * Props for the MorphingPopoverWithTarget variant.
34
+ *
35
+ * @interface IMorphingPopoverWithTargetProps
36
+ */
37
+ interface IMorphingPopoverWithTargetProps extends Omit<IMorphingPopoverProps, 'popoverId' | 'targetSize'> {
38
+ /** Reference to target element to anchor to. */
39
+ targetRef: React.RefObject<HTMLElement>;
40
+ /** Popover HTML ID. */
41
+ popoverId?: string;
42
+ }
43
+ export type { IMorphingPopoverProps, IMorphingButtonProps, IMorphingPopoverWithTargetProps, };
44
+ //# sourceMappingURL=MorphingPopover.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MorphingPopover.types.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/components/MorphingPopover/MorphingPopover.types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,UAAU,qBAAqB;IAC7B,qCAAqC;IACrC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;IACzB,mCAAmC;IACnC,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,iDAAiD;IACjD,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,0CAA0C;IAC1C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,UAAU,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IACjD,mCAAmC;IACnC,MAAM,CAAC,EAAE,MAAM,IAAI,CAAC;IACpB,oCAAoC;IACpC,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,mEAAmE;AACnE,UAAU,oBACR,SAAQ,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,mBAAmB,CAAC,EAAE,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;CAClD;AAED;;;;GAIG;AACH,UAAU,+BACR,SAAQ,IAAI,CAAC,qBAAqB,EAAE,WAAW,GAAG,YAAY,CAAC;IAC/D,gDAAgD;IAChD,SAAS,EAAE,KAAK,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;IACxC,uBAAuB;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,YAAY,EACV,qBAAqB,EACrB,oBAAoB,EACpB,+BAA+B,GAChC,CAAC"}
@@ -0,0 +1,46 @@
1
+ import type { IMorphingPopoverProps, IMorphingPopoverWithTargetProps } from './MorphingPopover.types';
2
+ /**
3
+ * MorphingPopover — animates from a circular trigger to an expanded popover.
4
+ *
5
+ * @param content - Content to display in the expanded popover
6
+ * @param trigger - Trigger button content (default: "...")
7
+ * @param targetSize - Expanded dimensions { width, height }
8
+ * @param onOpen - Callback when popover opens
9
+ * @param onClose - Callback when popover closes
10
+ *
11
+ * @example
12
+ * ```tsx
13
+ * <MorphingPopover
14
+ * trigger="+"
15
+ * content={<div>Expanded content</div>}
16
+ * targetSize={{ width: 320, height: 200 }}
17
+ * />
18
+ * ```
19
+ */
20
+ declare const MorphingPopover: import("react").ForwardRefExoticComponent<IMorphingPopoverProps & import("react").RefAttributes<HTMLButtonElement>>;
21
+ /**
22
+ * MorphingPopoverWithTarget — variant that animates to a specific target element.
23
+ *
24
+ * The target element must have CSS `anchor-name: --target-anchor` set on it.
25
+ *
26
+ * @param targetRef - Reference to the target element to anchor to
27
+ * @param content - Content to display in the expanded popover
28
+ *
29
+ * @example
30
+ * ```tsx
31
+ * const targetRef = useRef<HTMLDivElement>(null);
32
+ *
33
+ * <div ref={targetRef} style={{ anchorName: '--target-anchor' }}>
34
+ * Drag me around
35
+ * </div>
36
+ *
37
+ * <MorphingPopoverWithTarget
38
+ * targetRef={targetRef}
39
+ * content={<div>Content</div>}
40
+ * />
41
+ * ```
42
+ */
43
+ declare const MorphingPopoverWithTarget: import("react").ForwardRefExoticComponent<IMorphingPopoverWithTargetProps & import("react").RefAttributes<HTMLButtonElement>>;
44
+ export { MorphingPopover, MorphingPopoverWithTarget };
45
+ export type { IMorphingPopoverProps, IMorphingPopoverWithTargetProps, } from './MorphingPopover.types';
46
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/components/MorphingPopover/index.tsx"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EACV,qBAAqB,EAErB,+BAA+B,EAChC,MAAM,yBAAyB,CAAC;AAEjC;;;;;;;;;;;;;;;;;GAiBG;AACH,QAAA,MAAM,eAAe,qHAuDpB,CAAC;AAIF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,QAAA,MAAM,yBAAyB,+HAiD9B,CAAC;AAIF,OAAO,EAAE,eAAe,EAAE,yBAAyB,EAAE,CAAC;AACtD,YAAY,EACV,qBAAqB,EACrB,+BAA+B,GAChC,MAAM,yBAAyB,CAAC"}
@@ -1,20 +1,38 @@
1
- "use client";
1
+ 'use client';
2
2
 
3
- import { cn } from "../../../lib/utils.js";
3
+ import { cn } from "../../lib/utils.js";
4
4
  import morphing_popover_module_default from "./morphing-popover.module.js";
5
5
  import { forwardRef } from "react";
6
6
  import { jsx, jsxs } from "react/jsx-runtime";
7
7
 
8
- //#region src/components/ui/morphing-popover/morphing-popover.tsx
8
+ //#region src/react-ui/components/MorphingPopover/index.tsx
9
9
  /**
10
- * MorphingPopover - A popover that animates from a trigger button to a target position
10
+ * MorphingPopover a popover that animates from a trigger button to a target position.
11
11
  *
12
12
  * Uses CSS Anchor Positioning + Popover API + @starting-style for smooth morphing animations.
13
13
  *
14
14
  * @example
15
15
  * ```tsx
16
16
  * <MorphingPopover
17
- * trigger=""
17
+ * trigger="..."
18
+ * content={<div>Expanded content</div>}
19
+ * targetSize={{ width: 320, height: 200 }}
20
+ * />
21
+ * ```
22
+ */
23
+ /**
24
+ * MorphingPopover — animates from a circular trigger to an expanded popover.
25
+ *
26
+ * @param content - Content to display in the expanded popover
27
+ * @param trigger - Trigger button content (default: "...")
28
+ * @param targetSize - Expanded dimensions { width, height }
29
+ * @param onOpen - Callback when popover opens
30
+ * @param onClose - Callback when popover closes
31
+ *
32
+ * @example
33
+ * ```tsx
34
+ * <MorphingPopover
35
+ * trigger="+"
18
36
  * content={<div>Expanded content</div>}
19
37
  * targetSize={{ width: 320, height: 200 }}
20
38
  * />
@@ -51,7 +69,29 @@ const MorphingPopover = forwardRef(({ content, trigger = "⋯", triggerClassName
51
69
  });
52
70
  });
53
71
  MorphingPopover.displayName = "MorphingPopover";
54
- const MorphingPopoverWithTarget = forwardRef(({ content, trigger = "⋯", triggerClassName, popoverClassName, targetRef, onOpen, onClose, popoverId = "morphing-popover-target" }, ref) => {
72
+ /**
73
+ * MorphingPopoverWithTarget — variant that animates to a specific target element.
74
+ *
75
+ * The target element must have CSS `anchor-name: --target-anchor` set on it.
76
+ *
77
+ * @param targetRef - Reference to the target element to anchor to
78
+ * @param content - Content to display in the expanded popover
79
+ *
80
+ * @example
81
+ * ```tsx
82
+ * const targetRef = useRef<HTMLDivElement>(null);
83
+ *
84
+ * <div ref={targetRef} style={{ anchorName: '--target-anchor' }}>
85
+ * Drag me around
86
+ * </div>
87
+ *
88
+ * <MorphingPopoverWithTarget
89
+ * targetRef={targetRef}
90
+ * content={<div>Content</div>}
91
+ * />
92
+ * ```
93
+ */
94
+ const MorphingPopoverWithTarget = forwardRef(({ content, trigger = "⋯", triggerClassName, popoverClassName, onOpen, onClose, popoverId = "morphing-popover-target" }, ref) => {
55
95
  const handleToggle = (e) => {
56
96
  if (e.target.matches(":popover-open")) onOpen?.();
57
97
  else onClose?.();
@@ -0,0 +1,5 @@
1
+ //#region src/react-ui/components/MorphingPopover/morphing-popover.module.css
2
+ var morphing_popover_module_default = {};
3
+
4
+ //#endregion
5
+ export { morphing_popover_module_default as default };
@@ -0,0 +1,9 @@
1
+ /**
2
+ * Complex components barrel export.
3
+ *
4
+ * Components that use CSS modules or have complex internal structure.
5
+ *
6
+ * @module @mks2508/mks-ui/react/components
7
+ */
8
+ export * from './MorphingPopover';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/react-ui/components/index.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,cAAc,mBAAmB,CAAC"}
@@ -0,0 +1 @@
1
+ import { MorphingPopover, MorphingPopoverWithTarget } from "./MorphingPopover/index.js";
@@ -0,0 +1,30 @@
1
+ import * as React from 'react';
2
+ /**
3
+ * Options for the useAutoHeight hook.
4
+ */
5
+ interface IAutoHeightOptions {
6
+ /** Include parent element box model (padding, border) in measurement. */
7
+ includeParentBox?: boolean;
8
+ /** Include self element box model in measurement. */
9
+ includeSelfBox?: boolean;
10
+ }
11
+ /**
12
+ * Hook that measures and tracks the height of an element with ResizeObserver.
13
+ * Returns a ref to attach and the current height value.
14
+ *
15
+ * @param deps - Dependency list to trigger re-measurement
16
+ * @param options - Configuration for box model inclusion
17
+ * @returns Object with ref and height
18
+ *
19
+ * @example
20
+ * ```tsx
21
+ * const { ref, height } = useAutoHeight<HTMLDivElement>([content]);
22
+ * <div style={{ height }}><div ref={ref}>{content}</div></div>
23
+ * ```
24
+ */
25
+ export declare function useAutoHeight<T extends HTMLElement = HTMLDivElement>(deps?: React.DependencyList, options?: IAutoHeightOptions): {
26
+ readonly ref: React.RefObject<T | null>;
27
+ readonly height: number;
28
+ };
29
+ export type { IAutoHeightOptions };
30
+ //# sourceMappingURL=UseAutoHeight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UseAutoHeight.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/hooks/Animation/UseAutoHeight.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAE/B;;GAEG;AACH,UAAU,kBAAkB;IAC1B,yEAAyE;IACzE,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,qDAAqD;IACrD,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,CAAC,SAAS,WAAW,GAAG,cAAc,EAClE,IAAI,GAAE,KAAK,CAAC,cAAmB,EAC/B,OAAO,GAAE,kBAGR;;;EAuFF;AAED,YAAY,EAAE,kBAAkB,EAAE,CAAC"}
@@ -2,7 +2,21 @@
2
2
 
3
3
  import * as React from "react";
4
4
 
5
- //#region src/hooks/use-auto-height.tsx
5
+ //#region src/react-ui/hooks/Animation/UseAutoHeight.tsx
6
+ /**
7
+ * Hook that measures and tracks the height of an element with ResizeObserver.
8
+ * Returns a ref to attach and the current height value.
9
+ *
10
+ * @param deps - Dependency list to trigger re-measurement
11
+ * @param options - Configuration for box model inclusion
12
+ * @returns Object with ref and height
13
+ *
14
+ * @example
15
+ * ```tsx
16
+ * const { ref, height } = useAutoHeight<HTMLDivElement>([content]);
17
+ * <div style={{ height }}><div ref={ref}>{content}</div></div>
18
+ * ```
19
+ */
6
20
  function useAutoHeight(deps = [], options = {
7
21
  includeParentBox: true,
8
22
  includeSelfBox: false
@@ -0,0 +1,32 @@
1
+ import * as React from 'react';
2
+ import { type UseInViewOptions } from 'motion/react';
3
+ /**
4
+ * Options for the useIsInView hook.
5
+ */
6
+ interface IUseIsInViewOptions {
7
+ /** Enable intersection observer tracking. */
8
+ inView?: boolean;
9
+ /** Only trigger once when element enters viewport. */
10
+ inViewOnce?: boolean;
11
+ /** Root margin for intersection observer. */
12
+ inViewMargin?: UseInViewOptions['margin'];
13
+ }
14
+ /**
15
+ * Hook that tracks whether an element is visible in the viewport
16
+ * using the Intersection Observer API via motion/react.
17
+ *
18
+ * @param ref - Forwarded ref to merge with local ref
19
+ * @param options - InView configuration options
20
+ * @returns Object with local ref and isInView boolean
21
+ *
22
+ * @example
23
+ * ```tsx
24
+ * const { ref, isInView } = useIsInView(forwardedRef, { inView: true, inViewOnce: true });
25
+ * ```
26
+ */
27
+ declare function useIsInView<T extends HTMLElement = HTMLElement>(ref: React.Ref<T>, options?: IUseIsInViewOptions): {
28
+ ref: React.RefObject<T | null>;
29
+ isInView: boolean;
30
+ };
31
+ export { useIsInView, type IUseIsInViewOptions };
32
+ //# sourceMappingURL=UseIsInView.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UseIsInView.d.ts","sourceRoot":"","sources":["../../../../src/react-ui/hooks/DOM/UseIsInView.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAC;AAC/B,OAAO,EAAa,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhE;;GAEG;AACH,UAAU,mBAAmB;IAC3B,6CAA6C;IAC7C,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,sDAAsD;IACtD,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,6CAA6C;IAC7C,YAAY,CAAC,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;CAC3C;AAED;;;;;;;;;;;;GAYG;AACH,iBAAS,WAAW,CAAC,CAAC,SAAS,WAAW,GAAG,WAAW,EACtD,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EACjB,OAAO,GAAE,mBAAwB;;;EAWlC;AAED,OAAO,EAAE,WAAW,EAAE,KAAK,mBAAmB,EAAE,CAAC"}
@@ -0,0 +1,33 @@
1
+ import * as React from "react";
2
+ import { useInView } from "motion/react";
3
+
4
+ //#region src/react-ui/hooks/DOM/UseIsInView.tsx
5
+ /**
6
+ * Hook that tracks whether an element is visible in the viewport
7
+ * using the Intersection Observer API via motion/react.
8
+ *
9
+ * @param ref - Forwarded ref to merge with local ref
10
+ * @param options - InView configuration options
11
+ * @returns Object with local ref and isInView boolean
12
+ *
13
+ * @example
14
+ * ```tsx
15
+ * const { ref, isInView } = useIsInView(forwardedRef, { inView: true, inViewOnce: true });
16
+ * ```
17
+ */
18
+ function useIsInView(ref, options = {}) {
19
+ const { inView, inViewOnce = false, inViewMargin = "0px" } = options;
20
+ const localRef = React.useRef(null);
21
+ React.useImperativeHandle(ref, () => localRef.current);
22
+ const inViewResult = useInView(localRef, {
23
+ once: inViewOnce,
24
+ margin: inViewMargin
25
+ });
26
+ return {
27
+ ref: localRef,
28
+ isInView: !inView || inViewResult
29
+ };
30
+ }
31
+
32
+ //#endregion
33
+ export { useIsInView };