@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
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Menu/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,636 @@
1
+ 'use client';
2
+
3
+ import { cn } from "../../lib/utils.js";
4
+ import { Highlight, HighlightItem } from "../../primitives/Highlight/index.js";
5
+ import { getStrictContext } from "../../lib/get-strict-context.js";
6
+ import { useControlledState } from "../../hooks/State/UseControlledState.js";
7
+ import { useDataState } from "../../hooks/State/UseDataState.js";
8
+ import { menuStyles } from "./Menu.styles.js";
9
+ import * as React from "../../../react";
10
+ import { AnimatePresence, motion } from "motion/react";
11
+ import { jsx } from "react/jsx-runtime";
12
+ import { Menu } from "@base-ui/react/menu";
13
+
14
+ //#region src/react/ui/Menu/index.tsx
15
+ /**
16
+ * Menu component -- animated dropdown/context menu built on base-ui Menu
17
+ * with motion transitions, highlight tracking, and the v0.2.0 slot system.
18
+ *
19
+ * Provides sub-components for triggers, items, checkbox items, radio groups,
20
+ * submenus, keyboard shortcut hints, separators, and animated highlights.
21
+ *
22
+ * @module @mks2508/mks-ui/react/ui/Menu
23
+ *
24
+ * @example
25
+ * ```tsx
26
+ * <Menu>
27
+ * <MenuTrigger>Open Menu</MenuTrigger>
28
+ * <MenuPortal>
29
+ * <MenuPositioner sideOffset={8}>
30
+ * <MenuPopup className="rounded-lg border bg-zinc-900 p-1 shadow-xl">
31
+ * <MenuHighlight className="rounded-md bg-white/10" />
32
+ * <MenuHighlightItem>
33
+ * <MenuItem id="edit">Edit</MenuItem>
34
+ * </MenuHighlightItem>
35
+ * <MenuSeparator className="my-1 border-white/10" />
36
+ * <MenuHighlightItem>
37
+ * <MenuItem id="delete">Delete</MenuItem>
38
+ * </MenuHighlightItem>
39
+ * </MenuPopup>
40
+ * </MenuPositioner>
41
+ * </MenuPortal>
42
+ * </Menu>
43
+ * ```
44
+ */
45
+ const [MenuActiveValueProvider, useMenuActiveValue] = getStrictContext("MenuActiveValueContext");
46
+ const [MenuProvider, useMenu] = getStrictContext("MenuContext");
47
+ /**
48
+ * Root Menu component -- provides open/close state and highlighted-value context.
49
+ * Wraps base-ui Menu.Root with controlled state management.
50
+ *
51
+ * @param open - Controlled open state
52
+ * @param defaultOpen - Uncontrolled initial open state
53
+ * @param onOpenChange - Callback when open state changes
54
+ * @param slots - Partial class overrides per slot
55
+ * @param config - Menu behavior / animation configuration
56
+ *
57
+ * @example
58
+ * ```tsx
59
+ * <Menu slots={{ popup: 'bg-zinc-900' }}>
60
+ * <MenuTrigger>Actions</MenuTrigger>
61
+ * <MenuPortal>...</MenuPortal>
62
+ * </Menu>
63
+ * ```
64
+ */
65
+ function Menu$1({ slots, config, ...props }) {
66
+ const [isOpen, setIsOpen] = useControlledState({
67
+ value: props?.open,
68
+ defaultValue: props?.defaultOpen,
69
+ onChange: props?.onOpenChange
70
+ });
71
+ const [highlightedValue, setHighlightedValue] = React.useState(null);
72
+ return /* @__PURE__ */ jsx(MenuActiveValueProvider, {
73
+ value: {
74
+ highlightedValue,
75
+ setHighlightedValue
76
+ },
77
+ children: /* @__PURE__ */ jsx(MenuProvider, {
78
+ value: {
79
+ isOpen,
80
+ setIsOpen
81
+ },
82
+ children: /* @__PURE__ */ jsx(Menu.Root, {
83
+ "data-slot": "menu",
84
+ ...props,
85
+ onOpenChange: setIsOpen
86
+ })
87
+ })
88
+ });
89
+ }
90
+ /**
91
+ * MenuTrigger -- the interactive element that toggles the menu open/closed.
92
+ * Renders a base-ui Menu.Trigger with the `trigger` slot classes.
93
+ *
94
+ * @param slots - Partial class overrides per slot
95
+ * @param className - Additional class names
96
+ *
97
+ * @example
98
+ * ```tsx
99
+ * <MenuTrigger className="rounded-md px-3 py-1.5">
100
+ * Open Menu
101
+ * </MenuTrigger>
102
+ * ```
103
+ */
104
+ function MenuTrigger({ slots, className, ...props }) {
105
+ return /* @__PURE__ */ jsx(Menu.Trigger, {
106
+ "data-slot": "menu-trigger",
107
+ className: cn(menuStyles.trigger, slots?.trigger, className),
108
+ ...props
109
+ });
110
+ }
111
+ /**
112
+ * MenuPortal -- wraps menu content in a portal with AnimatePresence.
113
+ * Internally keeps the portal mounted and uses AnimatePresence for
114
+ * smooth enter/exit transitions of children.
115
+ *
116
+ * @example
117
+ * ```tsx
118
+ * <MenuPortal>
119
+ * <MenuPositioner>
120
+ * <MenuPopup>...</MenuPopup>
121
+ * </MenuPositioner>
122
+ * </MenuPortal>
123
+ * ```
124
+ */
125
+ function MenuPortal(props) {
126
+ const { isOpen } = useMenu();
127
+ return /* @__PURE__ */ jsx(AnimatePresence, { children: isOpen && /* @__PURE__ */ jsx(Menu.Portal, {
128
+ keepMounted: true,
129
+ "data-slot": "menu-portal",
130
+ ...props
131
+ }) });
132
+ }
133
+ /**
134
+ * MenuGroup -- logical grouping of related menu items.
135
+ * Renders a base-ui Menu.Group with the `group` slot classes.
136
+ *
137
+ * @param slots - Partial class overrides per slot
138
+ * @param className - Additional class names
139
+ *
140
+ * @example
141
+ * ```tsx
142
+ * <MenuGroup>
143
+ * <MenuGroupLabel>Editing</MenuGroupLabel>
144
+ * <MenuItem id="cut">Cut</MenuItem>
145
+ * <MenuItem id="copy">Copy</MenuItem>
146
+ * </MenuGroup>
147
+ * ```
148
+ */
149
+ function MenuGroup({ slots, className, ...props }) {
150
+ return /* @__PURE__ */ jsx(Menu.Group, {
151
+ "data-slot": "menu-group",
152
+ className: cn(menuStyles.group, slots?.group, className),
153
+ ...props
154
+ });
155
+ }
156
+ /**
157
+ * MenuGroupLabel -- heading text for a MenuGroup.
158
+ * Renders a base-ui Menu.GroupLabel with the `groupLabel` slot classes.
159
+ *
160
+ * @param slots - Partial class overrides per slot
161
+ * @param className - Additional class names
162
+ *
163
+ * @example
164
+ * ```tsx
165
+ * <MenuGroupLabel className="text-xs font-medium uppercase tracking-wider">
166
+ * Navigation
167
+ * </MenuGroupLabel>
168
+ * ```
169
+ */
170
+ function MenuGroupLabel({ slots, className, ...props }) {
171
+ return /* @__PURE__ */ jsx(Menu.GroupLabel, {
172
+ "data-slot": "menu-group-label",
173
+ className: cn(menuStyles.groupLabel, slots?.groupLabel, className),
174
+ ...props
175
+ });
176
+ }
177
+ /**
178
+ * MenuSubmenu -- a nested sub-menu with its own open/close state.
179
+ * Wraps base-ui Menu.SubmenuRoot and provides a scoped MenuProvider.
180
+ *
181
+ * @param open - Controlled open state
182
+ * @param defaultOpen - Uncontrolled initial open state
183
+ * @param onOpenChange - Callback when open state changes
184
+ *
185
+ * @example
186
+ * ```tsx
187
+ * <MenuSubmenu>
188
+ * <MenuSubmenuTrigger>More Actions</MenuSubmenuTrigger>
189
+ * <MenuPortal>
190
+ * <MenuPositioner>
191
+ * <MenuPopup>
192
+ * <MenuItem id="archive">Archive</MenuItem>
193
+ * </MenuPopup>
194
+ * </MenuPositioner>
195
+ * </MenuPortal>
196
+ * </MenuSubmenu>
197
+ * ```
198
+ */
199
+ function MenuSubmenu(props) {
200
+ const [isOpen, setIsOpen] = useControlledState({
201
+ value: props?.open,
202
+ defaultValue: props?.defaultOpen,
203
+ onChange: props?.onOpenChange
204
+ });
205
+ return /* @__PURE__ */ jsx(MenuProvider, {
206
+ value: {
207
+ isOpen,
208
+ setIsOpen
209
+ },
210
+ children: /* @__PURE__ */ jsx(Menu.SubmenuRoot, {
211
+ "data-slot": "menu-submenu",
212
+ ...props,
213
+ onOpenChange: setIsOpen
214
+ })
215
+ });
216
+ }
217
+ /**
218
+ * MenuSubmenuTrigger -- the item that opens a submenu on hover/focus.
219
+ * Tracks its own highlighted state via useDataState for highlight integration.
220
+ *
221
+ * @param label - Accessible label for the trigger
222
+ * @param id - Unique identifier used for highlight tracking
223
+ * @param disabled - Whether the trigger is disabled
224
+ * @param slots - Partial class overrides per slot
225
+ * @param className - Additional class names
226
+ *
227
+ * @example
228
+ * ```tsx
229
+ * <MenuSubmenuTrigger id="more" label="More actions">
230
+ * More...
231
+ * </MenuSubmenuTrigger>
232
+ * ```
233
+ */
234
+ function MenuSubmenuTrigger({ label, id, nativeButton, slots, className, ...props }) {
235
+ const { setHighlightedValue } = useMenuActiveValue();
236
+ const [, highlightedRef] = useDataState("highlighted", void 0, (value) => {
237
+ if (value === true) {
238
+ const el = highlightedRef.current;
239
+ const v = el?.dataset.value || el?.id || null;
240
+ if (v) setHighlightedValue(v);
241
+ }
242
+ });
243
+ return /* @__PURE__ */ jsx(Menu.SubmenuTrigger, {
244
+ ref: highlightedRef,
245
+ label,
246
+ id,
247
+ nativeButton,
248
+ "data-slot": "menu-submenu-trigger",
249
+ className: cn(menuStyles.submenuTrigger, slots?.submenuTrigger, className),
250
+ ...props
251
+ });
252
+ }
253
+ /**
254
+ * MenuHighlight -- animated background that follows the currently
255
+ * focused/highlighted menu item. Wraps the Highlight primitive with
256
+ * menu-specific defaults (spring transition, no click activation).
257
+ *
258
+ * @param transition - Motion transition config (default: spring 350/35)
259
+ * @param animateOnHover - Whether to activate on hover
260
+ * @param slots - Partial class overrides per slot
261
+ * @param className - Additional class names
262
+ *
263
+ * @example
264
+ * ```tsx
265
+ * <MenuHighlight className="rounded-md bg-white/10" />
266
+ * ```
267
+ */
268
+ function MenuHighlight({ transition = {
269
+ type: "spring",
270
+ stiffness: 350,
271
+ damping: 35
272
+ }, slots, className, ...props }) {
273
+ const { highlightedValue } = useMenuActiveValue();
274
+ return /* @__PURE__ */ jsx(Highlight, {
275
+ "data-slot": "menu-highlight",
276
+ click: false,
277
+ controlledItems: true,
278
+ transition,
279
+ value: highlightedValue,
280
+ className: cn(menuStyles.highlight, slots?.highlight, className),
281
+ ...props
282
+ });
283
+ }
284
+ /**
285
+ * MenuHighlightItem -- wraps a MenuItem for highlight position tracking.
286
+ * Must be placed inside a MenuHighlight context.
287
+ *
288
+ * @param slots - Partial class overrides per slot
289
+ *
290
+ * @example
291
+ * ```tsx
292
+ * <MenuHighlight className="rounded bg-white/10">
293
+ * <MenuHighlightItem>
294
+ * <MenuItem id="edit">Edit</MenuItem>
295
+ * </MenuHighlightItem>
296
+ * </MenuHighlight>
297
+ * ```
298
+ */
299
+ function MenuHighlightItem({ slots, ...props }) {
300
+ return /* @__PURE__ */ jsx(HighlightItem, {
301
+ "data-slot": "menu-highlight-item",
302
+ ...props
303
+ });
304
+ }
305
+ /**
306
+ * MenuPositioner -- positions the popup relative to the trigger element.
307
+ * Thin wrapper over base-ui Menu.Positioner.
308
+ *
309
+ * @param sideOffset - Gap between trigger and popup
310
+ * @param align - Alignment along the trigger edge
311
+ *
312
+ * @example
313
+ * ```tsx
314
+ * <MenuPositioner sideOffset={8} align="start">
315
+ * <MenuPopup>...</MenuPopup>
316
+ * </MenuPositioner>
317
+ * ```
318
+ */
319
+ function MenuPositioner(props) {
320
+ return /* @__PURE__ */ jsx(Menu.Positioner, {
321
+ "data-slot": "menu-positioner",
322
+ ...props
323
+ });
324
+ }
325
+ /**
326
+ * MenuPopup -- the visible flyout surface containing menu items.
327
+ * Uses Motion for animated entrance (scale + opacity) and exit.
328
+ *
329
+ * @param transition - Motion transition config (default: 0.2s duration)
330
+ * @param slots - Partial class overrides per slot
331
+ * @param className - Additional class names
332
+ * @param style - Inline styles merged with will-change hint
333
+ *
334
+ * @example
335
+ * ```tsx
336
+ * <MenuPopup className="min-w-[180px] rounded-lg border bg-zinc-900 p-1 shadow-xl">
337
+ * <MenuItem id="edit">Edit</MenuItem>
338
+ * <MenuItem id="delete">Delete</MenuItem>
339
+ * </MenuPopup>
340
+ * ```
341
+ */
342
+ function MenuPopup({ finalFocus, id, transition = { duration: .2 }, style, slots, className, ...props }) {
343
+ return /* @__PURE__ */ jsx(Menu.Popup, {
344
+ finalFocus,
345
+ id,
346
+ render: /* @__PURE__ */ jsx(motion.div, {
347
+ "data-slot": "menu-popup",
348
+ initial: {
349
+ opacity: 0,
350
+ scale: .95
351
+ },
352
+ animate: {
353
+ opacity: 1,
354
+ scale: 1
355
+ },
356
+ exit: {
357
+ opacity: 0,
358
+ scale: .95
359
+ },
360
+ transition,
361
+ style: {
362
+ willChange: "opacity, transform",
363
+ ...style
364
+ },
365
+ className: cn(menuStyles.popup, slots?.popup, className),
366
+ ...props
367
+ }, "menu-popup")
368
+ });
369
+ }
370
+ /**
371
+ * MenuItem -- a single actionable row within the menu.
372
+ * Tracks highlight state via useDataState for animated highlight integration.
373
+ *
374
+ * @param id - Unique identifier, also used as highlight tracking value
375
+ * @param label - Accessible label
376
+ * @param disabled - Whether the item is disabled
377
+ * @param closeOnClick - Close menu when this item is clicked
378
+ * @param slots - Partial class overrides per slot
379
+ * @param className - Additional class names
380
+ *
381
+ * @example
382
+ * ```tsx
383
+ * <MenuItem id="edit" label="Edit document">
384
+ * <PencilIcon className="mr-2 size-4" />
385
+ * Edit
386
+ * <MenuShortcut>Ctrl+E</MenuShortcut>
387
+ * </MenuItem>
388
+ * ```
389
+ */
390
+ function MenuItem({ disabled, label, closeOnClick, nativeButton, id, slots, className, ...props }) {
391
+ const { setHighlightedValue } = useMenuActiveValue();
392
+ const [, highlightedRef] = useDataState("highlighted", void 0, (value) => {
393
+ if (value === true) {
394
+ const el = highlightedRef.current;
395
+ const v = el?.dataset.value || el?.id || null;
396
+ if (v) setHighlightedValue(v);
397
+ }
398
+ });
399
+ return /* @__PURE__ */ jsx(Menu.Item, {
400
+ ref: highlightedRef,
401
+ label,
402
+ closeOnClick,
403
+ nativeButton,
404
+ disabled,
405
+ id,
406
+ "data-slot": "menu-item",
407
+ className: cn(menuStyles.item, slots?.item, className),
408
+ ...props
409
+ });
410
+ }
411
+ /**
412
+ * MenuCheckboxItem -- a toggleable checkbox item within the menu.
413
+ * Tracks highlight state for animated highlight integration.
414
+ *
415
+ * @param checked - Controlled checked state
416
+ * @param defaultChecked - Uncontrolled initial checked state
417
+ * @param onCheckedChange - Callback when checked state changes
418
+ * @param disabled - Whether the item is disabled
419
+ * @param slots - Partial class overrides per slot
420
+ * @param className - Additional class names
421
+ *
422
+ * @example
423
+ * ```tsx
424
+ * <MenuCheckboxItem checked={showGrid} onCheckedChange={setShowGrid}>
425
+ * <MenuCheckboxItemIndicator>
426
+ * <CheckIcon />
427
+ * </MenuCheckboxItemIndicator>
428
+ * Show Grid
429
+ * </MenuCheckboxItem>
430
+ * ```
431
+ */
432
+ function MenuCheckboxItem({ label, defaultChecked, checked, onCheckedChange, disabled, closeOnClick, nativeButton, id, slots, className, ...props }) {
433
+ const { setHighlightedValue } = useMenuActiveValue();
434
+ const [, highlightedRef] = useDataState("highlighted", void 0, (value) => {
435
+ if (value === true) {
436
+ const el = highlightedRef.current;
437
+ const v = el?.dataset.value || el?.id || null;
438
+ if (v) setHighlightedValue(v);
439
+ }
440
+ });
441
+ return /* @__PURE__ */ jsx(Menu.CheckboxItem, {
442
+ ref: highlightedRef,
443
+ label,
444
+ checked,
445
+ defaultChecked,
446
+ onCheckedChange,
447
+ disabled,
448
+ closeOnClick,
449
+ nativeButton,
450
+ id,
451
+ "data-slot": "menu-checkbox-item",
452
+ className: cn(menuStyles.checkboxItem, slots?.checkboxItem, className),
453
+ ...props
454
+ });
455
+ }
456
+ /**
457
+ * MenuCheckboxItemIndicator -- the visual check/indeterminate icon.
458
+ * Renders via a motion.div for animated enter/exit transitions.
459
+ *
460
+ * @param keepMounted - Keep in DOM when unchecked (for exit animations)
461
+ *
462
+ * @example
463
+ * ```tsx
464
+ * <MenuCheckboxItemIndicator
465
+ * initial={{ opacity: 0, scale: 0.8 }}
466
+ * animate={{ opacity: 1, scale: 1 }}
467
+ * >
468
+ * <CheckIcon className="size-4" />
469
+ * </MenuCheckboxItemIndicator>
470
+ * ```
471
+ */
472
+ function MenuCheckboxItemIndicator({ keepMounted, ...props }) {
473
+ return /* @__PURE__ */ jsx(Menu.CheckboxItemIndicator, {
474
+ "data-slot": "menu-checkbox-item-indicator",
475
+ keepMounted,
476
+ render: /* @__PURE__ */ jsx(motion.div, {
477
+ "data-slot": "menu-checkbox-item-indicator",
478
+ ...props
479
+ })
480
+ });
481
+ }
482
+ /**
483
+ * MenuRadioGroup -- groups radio items for single-selection within a menu.
484
+ * Wraps base-ui Menu.RadioGroup.
485
+ *
486
+ * @param value - Controlled selected value
487
+ * @param defaultValue - Uncontrolled initial selected value
488
+ * @param onValueChange - Callback when selection changes
489
+ *
490
+ * @example
491
+ * ```tsx
492
+ * <MenuRadioGroup value={sortBy} onValueChange={setSortBy}>
493
+ * <MenuRadioItem value="name">Name</MenuRadioItem>
494
+ * <MenuRadioItem value="date">Date</MenuRadioItem>
495
+ * <MenuRadioItem value="size">Size</MenuRadioItem>
496
+ * </MenuRadioGroup>
497
+ * ```
498
+ */
499
+ function MenuRadioGroup(props) {
500
+ return /* @__PURE__ */ jsx(Menu.RadioGroup, {
501
+ "data-slot": "menu-radio-group",
502
+ ...props
503
+ });
504
+ }
505
+ /**
506
+ * MenuRadioItem -- a single option within a MenuRadioGroup.
507
+ * Tracks highlight state for animated highlight integration.
508
+ *
509
+ * @param value - The value this item represents
510
+ * @param disabled - Whether the item is disabled
511
+ * @param label - Accessible label
512
+ * @param slots - Partial class overrides per slot
513
+ * @param className - Additional class names
514
+ *
515
+ * @example
516
+ * ```tsx
517
+ * <MenuRadioItem value="name">
518
+ * <MenuRadioItemIndicator>
519
+ * <DotIcon />
520
+ * </MenuRadioItemIndicator>
521
+ * Sort by Name
522
+ * </MenuRadioItem>
523
+ * ```
524
+ */
525
+ function MenuRadioItem({ value, disabled, label, closeOnClick, nativeButton, id, slots, className, ...props }) {
526
+ const { setHighlightedValue } = useMenuActiveValue();
527
+ const [, highlightedRef] = useDataState("highlighted", void 0, (value) => {
528
+ if (value === true) {
529
+ const el = highlightedRef.current;
530
+ const v = el?.dataset.value || el?.id || null;
531
+ if (v) setHighlightedValue(v);
532
+ }
533
+ });
534
+ return /* @__PURE__ */ jsx(Menu.RadioItem, {
535
+ ref: highlightedRef,
536
+ value,
537
+ disabled,
538
+ label,
539
+ closeOnClick,
540
+ nativeButton,
541
+ id,
542
+ "data-slot": "menu-radio-item",
543
+ className: cn(menuStyles.radioItem, slots?.radioItem, className),
544
+ ...props
545
+ });
546
+ }
547
+ /**
548
+ * MenuRadioItemIndicator -- the selection dot/icon for a radio item.
549
+ * Renders via a motion.div for animated enter/exit transitions.
550
+ *
551
+ * @param keepMounted - Keep in DOM when unselected (for exit animations)
552
+ *
553
+ * @example
554
+ * ```tsx
555
+ * <MenuRadioItemIndicator
556
+ * initial={{ opacity: 0 }}
557
+ * animate={{ opacity: 1 }}
558
+ * >
559
+ * <DotFilledIcon className="size-4" />
560
+ * </MenuRadioItemIndicator>
561
+ * ```
562
+ */
563
+ function MenuRadioItemIndicator({ keepMounted, ...props }) {
564
+ return /* @__PURE__ */ jsx(Menu.RadioItemIndicator, {
565
+ "data-slot": "menu-radio-item-indicator",
566
+ keepMounted,
567
+ render: /* @__PURE__ */ jsx(motion.div, {
568
+ "data-slot": "menu-radio-item-indicator",
569
+ ...props
570
+ })
571
+ });
572
+ }
573
+ /**
574
+ * MenuShortcut -- displays a keyboard shortcut hint aligned to the right.
575
+ * Renders a plain `<span>` with the `shortcut` slot classes.
576
+ *
577
+ * @param slots - Partial class overrides per slot
578
+ * @param className - Additional class names
579
+ *
580
+ * @example
581
+ * ```tsx
582
+ * <MenuItem id="copy">
583
+ * Copy
584
+ * <MenuShortcut>Ctrl+C</MenuShortcut>
585
+ * </MenuItem>
586
+ * ```
587
+ */
588
+ function MenuShortcut({ slots, className, ...props }) {
589
+ return /* @__PURE__ */ jsx("span", {
590
+ "data-slot": "menu-shortcut",
591
+ className: cn(menuStyles.shortcut, slots?.shortcut, className),
592
+ ...props
593
+ });
594
+ }
595
+ /**
596
+ * MenuArrow -- the directional caret/arrow on the popup edge.
597
+ * Wraps base-ui Menu.Arrow.
598
+ *
599
+ * @example
600
+ * ```tsx
601
+ * <MenuPopup>
602
+ * <MenuArrow className="fill-zinc-800" />
603
+ * <MenuItem id="edit">Edit</MenuItem>
604
+ * </MenuPopup>
605
+ * ```
606
+ */
607
+ function MenuArrow(props) {
608
+ return /* @__PURE__ */ jsx(Menu.Arrow, {
609
+ "data-slot": "menu-arrow",
610
+ ...props
611
+ });
612
+ }
613
+ /**
614
+ * MenuSeparator -- a horizontal divider between menu items or groups.
615
+ * Renders a base-ui Menu.Separator with the `separator` slot classes.
616
+ *
617
+ * @param slots - Partial class overrides per slot
618
+ * @param className - Additional class names
619
+ *
620
+ * @example
621
+ * ```tsx
622
+ * <MenuItem id="edit">Edit</MenuItem>
623
+ * <MenuSeparator className="my-1 h-px bg-white/10" />
624
+ * <MenuItem id="delete">Delete</MenuItem>
625
+ * ```
626
+ */
627
+ function MenuSeparator({ slots, className, ...props }) {
628
+ return /* @__PURE__ */ jsx(Menu.Separator, {
629
+ "data-slot": "menu-separator",
630
+ className: cn(menuStyles.separator, slots?.separator, className),
631
+ ...props
632
+ });
633
+ }
634
+
635
+ //#endregion
636
+ export { Menu$1 as Menu, MenuArrow, MenuCheckboxItem, MenuCheckboxItemIndicator, MenuGroup, MenuGroupLabel, MenuHighlight, MenuHighlightItem, MenuItem, MenuPopup, MenuPortal, MenuPositioner, MenuRadioGroup, MenuRadioItem, MenuRadioItemIndicator, MenuSeparator, MenuShortcut, MenuSubmenu, MenuSubmenuTrigger, MenuTrigger, useMenu, useMenuActiveValue };
@@ -0,0 +1,23 @@
1
+ /**
2
+ * Style definitions for the Popover component.
3
+ *
4
+ * Provides StyleSlots for each visual region. Uses only CSS variable
5
+ * utilities; never hard-coded color values.
6
+ *
7
+ * @module @mks2508/mks-ui/react/ui/Popover/Popover.styles
8
+ */
9
+ import type { StyleSlots } from '../../../core/types';
10
+ import type { PopoverSlot } from './Popover.types';
11
+ /**
12
+ * Default Tailwind classes for each Popover visual region.
13
+ * Consumers override via the `slots` prop; the merge order is:
14
+ * `base -> slots -> className`.
15
+ *
16
+ * @example
17
+ * ```typescript
18
+ * import { popoverStyles } from './Popover.styles';
19
+ * // popoverStyles.popup => 'z-50 w-72 rounded-md border ...'
20
+ * ```
21
+ */
22
+ export declare const popoverStyles: StyleSlots<PopoverSlot>;
23
+ //# sourceMappingURL=Popover.styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Popover.styles.d.ts","sourceRoot":"","sources":["../../../../src/react/ui/Popover/Popover.styles.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAEnD;;;;;;;;;;GAUG;AACH,eAAO,MAAM,aAAa,EAAE,UAAU,CAAC,WAAW,CA+BjD,CAAC"}
@@ -0,0 +1,26 @@
1
+ //#region src/react/ui/Popover/Popover.styles.ts
2
+ /**
3
+ * Default Tailwind classes for each Popover visual region.
4
+ * Consumers override via the `slots` prop; the merge order is:
5
+ * `base -> slots -> className`.
6
+ *
7
+ * @example
8
+ * ```typescript
9
+ * import { popoverStyles } from './Popover.styles';
10
+ * // popoverStyles.popup => 'z-50 w-72 rounded-md border ...'
11
+ * ```
12
+ */
13
+ const popoverStyles = {
14
+ root: "",
15
+ popup: ["z-50 w-72 rounded-md border border-border", "bg-popover p-4 text-popover-foreground shadow-md outline-none"].join(" "),
16
+ trigger: "",
17
+ positioner: "",
18
+ backdrop: "fixed inset-0",
19
+ arrow: "fill-popover",
20
+ title: "font-medium leading-none text-foreground",
21
+ description: "text-sm text-muted-foreground",
22
+ close: "rounded-sm opacity-70 ring-offset-background transition-opacity hover:opacity-100 focus:outline-none focus:ring-2 focus:ring-ring focus:ring-offset-2"
23
+ };
24
+
25
+ //#endregion
26
+ export { popoverStyles };