frey-ui 1.0.9 → 1.0.11

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 (338) hide show
  1. package/README.md +25 -162
  2. package/dist/cjs/Accordion/accordion.module.css.cjs +9 -0
  3. package/dist/cjs/Accordion/accordion.module.css.cjs.map +1 -0
  4. package/dist/cjs/Accordion/index.cjs +99 -0
  5. package/dist/cjs/Accordion/index.cjs.map +1 -0
  6. package/dist/cjs/Alert/{alert.module.css.js → alert.module.css.cjs} +2 -2
  7. package/dist/cjs/Alert/alert.module.css.cjs.map +1 -0
  8. package/dist/cjs/Alert/index.cjs +36 -0
  9. package/dist/cjs/Alert/index.cjs.map +1 -0
  10. package/dist/cjs/Avatar/avatar.module.css.cjs +9 -0
  11. package/dist/cjs/Avatar/avatar.module.css.cjs.map +1 -0
  12. package/dist/cjs/Avatar/index.cjs +53 -0
  13. package/dist/cjs/Avatar/index.cjs.map +1 -0
  14. package/dist/cjs/Button/{button.module.css.js → button.module.css.cjs} +1 -1
  15. package/dist/cjs/Button/button.module.css.cjs.map +1 -0
  16. package/dist/cjs/Button/index.cjs +30 -0
  17. package/dist/cjs/Button/index.cjs.map +1 -0
  18. package/dist/cjs/Card/card.module.css.cjs +9 -0
  19. package/dist/cjs/Card/card.module.css.cjs.map +1 -0
  20. package/dist/cjs/Card/index.cjs +40 -0
  21. package/dist/cjs/Card/index.cjs.map +1 -0
  22. package/dist/cjs/Checkbox/{checkbox.module.css.js → checkbox.module.css.cjs} +1 -1
  23. package/dist/cjs/Checkbox/checkbox.module.css.cjs.map +1 -0
  24. package/dist/cjs/Checkbox/index.cjs +47 -0
  25. package/dist/cjs/Checkbox/index.cjs.map +1 -0
  26. package/dist/cjs/Chip/{chip.module.css.js → chip.module.css.cjs} +1 -1
  27. package/dist/cjs/Chip/chip.module.css.cjs.map +1 -0
  28. package/dist/cjs/Chip/{index.js → index.cjs} +7 -11
  29. package/dist/cjs/Chip/index.cjs.map +1 -0
  30. package/dist/cjs/Dialog/dialog.module.css.cjs +9 -0
  31. package/dist/cjs/Dialog/dialog.module.css.cjs.map +1 -0
  32. package/dist/cjs/Dialog/index.cjs +195 -0
  33. package/dist/cjs/Dialog/index.cjs.map +1 -0
  34. package/dist/cjs/DropdownMenu/dropdownmenu.module.css.cjs +9 -0
  35. package/dist/cjs/DropdownMenu/dropdownmenu.module.css.cjs.map +1 -0
  36. package/dist/cjs/DropdownMenu/index.cjs +153 -0
  37. package/dist/cjs/DropdownMenu/index.cjs.map +1 -0
  38. package/dist/cjs/Field/field.module.css.cjs +9 -0
  39. package/dist/cjs/Field/field.module.css.cjs.map +1 -0
  40. package/dist/cjs/Field/index.cjs +35 -0
  41. package/dist/cjs/Field/index.cjs.map +1 -0
  42. package/dist/cjs/Icons/icons.module.css.cjs +9 -0
  43. package/dist/cjs/Icons/icons.module.css.cjs.map +1 -0
  44. package/dist/cjs/Icons/index.cjs +96 -0
  45. package/dist/cjs/Icons/index.cjs.map +1 -0
  46. package/dist/cjs/Popover/index.cjs +102 -0
  47. package/dist/cjs/Popover/index.cjs.map +1 -0
  48. package/dist/cjs/Popover/popover.module.css.cjs +9 -0
  49. package/dist/cjs/Popover/popover.module.css.cjs.map +1 -0
  50. package/dist/cjs/Progress/index.cjs +29 -0
  51. package/dist/cjs/Progress/index.cjs.map +1 -0
  52. package/dist/cjs/Progress/progress.module.css.cjs +9 -0
  53. package/dist/cjs/Progress/progress.module.css.cjs.map +1 -0
  54. package/dist/cjs/RadioGroup/index.cjs +42 -0
  55. package/dist/cjs/RadioGroup/index.cjs.map +1 -0
  56. package/dist/cjs/RadioGroup/radiogroup.module.css.cjs +9 -0
  57. package/dist/cjs/RadioGroup/radiogroup.module.css.cjs.map +1 -0
  58. package/dist/cjs/Select/index.cjs +28 -0
  59. package/dist/cjs/Select/index.cjs.map +1 -0
  60. package/dist/cjs/Select/select.module.css.cjs +9 -0
  61. package/dist/cjs/Select/select.module.css.cjs.map +1 -0
  62. package/dist/cjs/Skeleton/index.cjs +27 -0
  63. package/dist/cjs/Skeleton/index.cjs.map +1 -0
  64. package/dist/cjs/Skeleton/{skeleton.module.css.js → skeleton.module.css.cjs} +1 -1
  65. package/dist/cjs/Skeleton/skeleton.module.css.cjs.map +1 -0
  66. package/dist/cjs/Spinner/index.cjs +32 -0
  67. package/dist/cjs/Spinner/index.cjs.map +1 -0
  68. package/dist/cjs/Spinner/spinner.module.css.cjs +9 -0
  69. package/dist/cjs/Spinner/spinner.module.css.cjs.map +1 -0
  70. package/dist/cjs/Switch/{index.js → index.cjs} +7 -9
  71. package/dist/cjs/Switch/index.cjs.map +1 -0
  72. package/dist/cjs/Switch/{switch.module.css.js → switch.module.css.cjs} +1 -1
  73. package/dist/cjs/Switch/switch.module.css.cjs.map +1 -0
  74. package/dist/cjs/Tabs/index.cjs +87 -0
  75. package/dist/cjs/Tabs/index.cjs.map +1 -0
  76. package/dist/cjs/Tabs/tabs.module.css.cjs +9 -0
  77. package/dist/cjs/Tabs/tabs.module.css.cjs.map +1 -0
  78. package/dist/cjs/TextInput/{index.js → index.cjs} +6 -8
  79. package/dist/cjs/TextInput/index.cjs.map +1 -0
  80. package/dist/cjs/TextInput/{textinput.module.css.js → textinput.module.css.cjs} +1 -1
  81. package/dist/cjs/TextInput/textinput.module.css.cjs.map +1 -0
  82. package/dist/cjs/Textarea/index.cjs +28 -0
  83. package/dist/cjs/Textarea/index.cjs.map +1 -0
  84. package/dist/cjs/Textarea/textarea.module.css.cjs +9 -0
  85. package/dist/cjs/Textarea/textarea.module.css.cjs.map +1 -0
  86. package/dist/cjs/ThemeProvider/index.cjs +29 -0
  87. package/dist/cjs/ThemeProvider/index.cjs.map +1 -0
  88. package/dist/cjs/ThemeProvider/{themeprovider.module.css.js → themeprovider.module.css.cjs} +1 -1
  89. package/dist/cjs/ThemeProvider/themeprovider.module.css.cjs.map +1 -0
  90. package/dist/cjs/Toast/index.cjs +109 -0
  91. package/dist/cjs/Toast/index.cjs.map +1 -0
  92. package/dist/cjs/Toast/toast.module.css.cjs +9 -0
  93. package/dist/cjs/Toast/toast.module.css.cjs.map +1 -0
  94. package/dist/cjs/Tooltip/index.cjs +102 -0
  95. package/dist/cjs/Tooltip/index.cjs.map +1 -0
  96. package/dist/cjs/Tooltip/tooltip.module.css.cjs +9 -0
  97. package/dist/cjs/Tooltip/tooltip.module.css.cjs.map +1 -0
  98. package/dist/cjs/hooks/useControllableState.cjs +24 -0
  99. package/dist/cjs/hooks/useControllableState.cjs.map +1 -0
  100. package/dist/cjs/hooks/useDismiss.cjs +44 -0
  101. package/dist/cjs/hooks/useDismiss.cjs.map +1 -0
  102. package/dist/cjs/hooks/useFloatingPosition.cjs +68 -0
  103. package/dist/cjs/hooks/useFloatingPosition.cjs.map +1 -0
  104. package/dist/cjs/index.cjs +64 -0
  105. package/dist/cjs/index.cjs.map +1 -0
  106. package/dist/cjs/utils/clamp.cjs +9 -0
  107. package/dist/cjs/utils/clamp.cjs.map +1 -0
  108. package/dist/cjs/utils/mergeRefs.cjs +21 -0
  109. package/dist/cjs/utils/mergeRefs.cjs.map +1 -0
  110. package/dist/cjs/utils/slot.cjs +61 -0
  111. package/dist/cjs/utils/slot.cjs.map +1 -0
  112. package/dist/esm/Accordion/accordion.module.css.mjs +5 -0
  113. package/dist/esm/Accordion/accordion.module.css.mjs.map +1 -0
  114. package/dist/esm/Accordion/index.mjs +94 -0
  115. package/dist/esm/Accordion/index.mjs.map +1 -0
  116. package/dist/esm/Alert/{alert.module.css.js → alert.module.css.mjs} +2 -2
  117. package/dist/esm/Alert/alert.module.css.mjs.map +1 -0
  118. package/dist/esm/Alert/index.mjs +32 -0
  119. package/dist/esm/Alert/index.mjs.map +1 -0
  120. package/dist/esm/Avatar/avatar.module.css.mjs +5 -0
  121. package/dist/esm/Avatar/avatar.module.css.mjs.map +1 -0
  122. package/dist/esm/Avatar/index.mjs +49 -0
  123. package/dist/esm/Avatar/index.mjs.map +1 -0
  124. package/dist/esm/Button/{button.module.css.js → button.module.css.mjs} +1 -1
  125. package/dist/esm/Button/button.module.css.mjs.map +1 -0
  126. package/dist/esm/Button/index.mjs +26 -0
  127. package/dist/esm/Button/index.mjs.map +1 -0
  128. package/dist/esm/Card/card.module.css.mjs +5 -0
  129. package/dist/esm/Card/card.module.css.mjs.map +1 -0
  130. package/dist/esm/Card/index.mjs +35 -0
  131. package/dist/esm/Card/index.mjs.map +1 -0
  132. package/dist/esm/Checkbox/{checkbox.module.css.js → checkbox.module.css.mjs} +1 -1
  133. package/dist/esm/Checkbox/checkbox.module.css.mjs.map +1 -0
  134. package/dist/esm/Checkbox/index.mjs +43 -0
  135. package/dist/esm/Checkbox/index.mjs.map +1 -0
  136. package/dist/esm/Chip/{chip.module.css.js → chip.module.css.mjs} +1 -1
  137. package/dist/esm/Chip/chip.module.css.mjs.map +1 -0
  138. package/dist/esm/Chip/{index.js → index.mjs} +7 -11
  139. package/dist/esm/Chip/index.mjs.map +1 -0
  140. package/dist/esm/Dialog/dialog.module.css.mjs +5 -0
  141. package/dist/esm/Dialog/dialog.module.css.mjs.map +1 -0
  142. package/dist/esm/Dialog/index.mjs +190 -0
  143. package/dist/esm/Dialog/index.mjs.map +1 -0
  144. package/dist/esm/DropdownMenu/dropdownmenu.module.css.mjs +5 -0
  145. package/dist/esm/DropdownMenu/dropdownmenu.module.css.mjs.map +1 -0
  146. package/dist/esm/DropdownMenu/index.mjs +148 -0
  147. package/dist/esm/DropdownMenu/index.mjs.map +1 -0
  148. package/dist/esm/Field/field.module.css.mjs +5 -0
  149. package/dist/esm/Field/field.module.css.mjs.map +1 -0
  150. package/dist/esm/Field/index.mjs +31 -0
  151. package/dist/esm/Field/index.mjs.map +1 -0
  152. package/dist/esm/Icons/icons.module.css.mjs +5 -0
  153. package/dist/esm/Icons/icons.module.css.mjs.map +1 -0
  154. package/dist/esm/Icons/index.mjs +84 -0
  155. package/dist/esm/Icons/index.mjs.map +1 -0
  156. package/dist/esm/Popover/index.mjs +97 -0
  157. package/dist/esm/Popover/index.mjs.map +1 -0
  158. package/dist/esm/Popover/popover.module.css.mjs +5 -0
  159. package/dist/esm/Popover/popover.module.css.mjs.map +1 -0
  160. package/dist/esm/Progress/index.mjs +25 -0
  161. package/dist/esm/Progress/index.mjs.map +1 -0
  162. package/dist/esm/Progress/progress.module.css.mjs +5 -0
  163. package/dist/esm/Progress/progress.module.css.mjs.map +1 -0
  164. package/dist/esm/RadioGroup/index.mjs +38 -0
  165. package/dist/esm/RadioGroup/index.mjs.map +1 -0
  166. package/dist/esm/RadioGroup/radiogroup.module.css.mjs +5 -0
  167. package/dist/esm/RadioGroup/radiogroup.module.css.mjs.map +1 -0
  168. package/dist/esm/Select/index.mjs +24 -0
  169. package/dist/esm/Select/index.mjs.map +1 -0
  170. package/dist/esm/Select/select.module.css.mjs +5 -0
  171. package/dist/esm/Select/select.module.css.mjs.map +1 -0
  172. package/dist/esm/Skeleton/index.mjs +23 -0
  173. package/dist/esm/Skeleton/index.mjs.map +1 -0
  174. package/dist/esm/Skeleton/{skeleton.module.css.js → skeleton.module.css.mjs} +1 -1
  175. package/dist/esm/Skeleton/skeleton.module.css.mjs.map +1 -0
  176. package/dist/esm/Spinner/index.mjs +28 -0
  177. package/dist/esm/Spinner/index.mjs.map +1 -0
  178. package/dist/esm/Spinner/spinner.module.css.mjs +5 -0
  179. package/dist/esm/Spinner/spinner.module.css.mjs.map +1 -0
  180. package/dist/esm/Switch/index.mjs +34 -0
  181. package/dist/esm/Switch/index.mjs.map +1 -0
  182. package/dist/esm/Switch/{switch.module.css.js → switch.module.css.mjs} +1 -1
  183. package/dist/esm/Switch/switch.module.css.mjs.map +1 -0
  184. package/dist/esm/Tabs/index.mjs +82 -0
  185. package/dist/esm/Tabs/index.mjs.map +1 -0
  186. package/dist/esm/Tabs/tabs.module.css.mjs +5 -0
  187. package/dist/esm/Tabs/tabs.module.css.mjs.map +1 -0
  188. package/dist/esm/TextInput/index.mjs +27 -0
  189. package/dist/esm/TextInput/index.mjs.map +1 -0
  190. package/dist/esm/TextInput/{textinput.module.css.js → textinput.module.css.mjs} +1 -1
  191. package/dist/esm/TextInput/textinput.module.css.mjs.map +1 -0
  192. package/dist/esm/Textarea/index.mjs +24 -0
  193. package/dist/esm/Textarea/index.mjs.map +1 -0
  194. package/dist/esm/Textarea/textarea.module.css.mjs +5 -0
  195. package/dist/esm/Textarea/textarea.module.css.mjs.map +1 -0
  196. package/dist/esm/ThemeProvider/index.mjs +25 -0
  197. package/dist/esm/ThemeProvider/index.mjs.map +1 -0
  198. package/dist/esm/ThemeProvider/{themeprovider.module.css.js → themeprovider.module.css.mjs} +1 -1
  199. package/dist/esm/ThemeProvider/themeprovider.module.css.mjs.map +1 -0
  200. package/dist/esm/Toast/index.mjs +106 -0
  201. package/dist/esm/Toast/index.mjs.map +1 -0
  202. package/dist/esm/Toast/toast.module.css.mjs +5 -0
  203. package/dist/esm/Toast/toast.module.css.mjs.map +1 -0
  204. package/dist/esm/Tooltip/index.mjs +98 -0
  205. package/dist/esm/Tooltip/index.mjs.map +1 -0
  206. package/dist/esm/Tooltip/tooltip.module.css.mjs +5 -0
  207. package/dist/esm/Tooltip/tooltip.module.css.mjs.map +1 -0
  208. package/dist/esm/hooks/useControllableState.mjs +22 -0
  209. package/dist/esm/hooks/useControllableState.mjs.map +1 -0
  210. package/dist/esm/hooks/useDismiss.mjs +42 -0
  211. package/dist/esm/hooks/useDismiss.mjs.map +1 -0
  212. package/dist/esm/hooks/useFloatingPosition.mjs +66 -0
  213. package/dist/esm/hooks/useFloatingPosition.mjs.map +1 -0
  214. package/dist/esm/index.mjs +26 -0
  215. package/dist/esm/index.mjs.map +1 -0
  216. package/dist/esm/utils/clamp.mjs +7 -0
  217. package/dist/esm/utils/clamp.mjs.map +1 -0
  218. package/dist/esm/utils/mergeRefs.mjs +19 -0
  219. package/dist/esm/utils/mergeRefs.mjs.map +1 -0
  220. package/dist/esm/utils/slot.mjs +58 -0
  221. package/dist/esm/utils/slot.mjs.map +1 -0
  222. package/dist/index.d.ts +420 -22
  223. package/dist/styles.css +2 -1
  224. package/dist/styles.css.map +1 -1
  225. package/dist/types/src/Accordion/index.d.ts +29 -0
  226. package/dist/types/src/Accordion/index.d.ts.map +1 -0
  227. package/dist/types/src/Alert/index.d.ts +4 -2
  228. package/dist/types/src/Alert/index.d.ts.map +1 -0
  229. package/dist/types/src/Avatar/index.d.ts +14 -0
  230. package/dist/types/src/Avatar/index.d.ts.map +1 -0
  231. package/dist/types/src/Button/index.d.ts +8 -6
  232. package/dist/types/src/Button/index.d.ts.map +1 -0
  233. package/dist/types/src/Card/index.d.ts +25 -0
  234. package/dist/types/src/Card/index.d.ts.map +1 -0
  235. package/dist/types/src/Checkbox/index.d.ts +3 -1
  236. package/dist/types/src/Checkbox/index.d.ts.map +1 -0
  237. package/dist/types/src/Chip/index.d.ts +9 -5
  238. package/dist/types/src/Chip/index.d.ts.map +1 -0
  239. package/dist/types/src/Dialog/index.d.ts +59 -0
  240. package/dist/types/src/Dialog/index.d.ts.map +1 -0
  241. package/dist/types/src/DropdownMenu/index.d.ts +41 -0
  242. package/dist/types/src/DropdownMenu/index.d.ts.map +1 -0
  243. package/dist/types/src/Field/index.d.ts +23 -0
  244. package/dist/types/src/Field/index.d.ts.map +1 -0
  245. package/dist/types/src/Icons/index.d.ts +31 -0
  246. package/dist/types/src/Icons/index.d.ts.map +1 -0
  247. package/dist/types/src/Popover/index.d.ts +33 -0
  248. package/dist/types/src/Popover/index.d.ts.map +1 -0
  249. package/dist/types/src/Progress/index.d.ts +17 -0
  250. package/dist/types/src/Progress/index.d.ts.map +1 -0
  251. package/dist/types/src/RadioGroup/index.d.ts +29 -0
  252. package/dist/types/src/RadioGroup/index.d.ts.map +1 -0
  253. package/dist/types/src/Select/index.d.ts +16 -0
  254. package/dist/types/src/Select/index.d.ts.map +1 -0
  255. package/dist/types/src/Skeleton/index.d.ts +4 -2
  256. package/dist/types/src/Skeleton/index.d.ts.map +1 -0
  257. package/dist/types/src/Spinner/index.d.ts +12 -0
  258. package/dist/types/src/Spinner/index.d.ts.map +1 -0
  259. package/dist/types/src/Switch/index.d.ts +3 -1
  260. package/dist/types/src/Switch/index.d.ts.map +1 -0
  261. package/dist/types/src/Tabs/index.d.ts +29 -0
  262. package/dist/types/src/Tabs/index.d.ts.map +1 -0
  263. package/dist/types/src/TextInput/index.d.ts +3 -1
  264. package/dist/types/src/TextInput/index.d.ts.map +1 -0
  265. package/dist/types/src/Textarea/index.d.ts +15 -0
  266. package/dist/types/src/Textarea/index.d.ts.map +1 -0
  267. package/dist/types/src/ThemeProvider/index.d.ts +4 -2
  268. package/dist/types/src/ThemeProvider/index.d.ts.map +1 -0
  269. package/dist/types/src/Toast/index.d.ts +31 -0
  270. package/dist/types/src/Toast/index.d.ts.map +1 -0
  271. package/dist/types/src/Tooltip/index.d.ts +19 -0
  272. package/dist/types/src/Tooltip/index.d.ts.map +1 -0
  273. package/dist/types/src/hooks/useControllableState.d.ts +6 -0
  274. package/dist/types/src/hooks/useControllableState.d.ts.map +1 -0
  275. package/dist/types/src/hooks/useDismiss.d.ts +18 -0
  276. package/dist/types/src/hooks/useDismiss.d.ts.map +1 -0
  277. package/dist/types/src/hooks/useFloatingPosition.d.ts +26 -0
  278. package/dist/types/src/hooks/useFloatingPosition.d.ts.map +1 -0
  279. package/dist/types/src/index.d.ts +33 -0
  280. package/dist/types/src/index.d.ts.map +1 -0
  281. package/dist/types/src/types/polymorphic.d.ts +6 -0
  282. package/dist/types/src/types/polymorphic.d.ts.map +1 -0
  283. package/dist/types/src/utils/clamp.d.ts +2 -0
  284. package/dist/types/src/utils/clamp.d.ts.map +1 -0
  285. package/dist/types/src/utils/mergeRefs.d.ts +3 -0
  286. package/dist/types/src/utils/mergeRefs.d.ts.map +1 -0
  287. package/dist/types/src/utils/slot.d.ts +12 -0
  288. package/dist/types/src/utils/slot.d.ts.map +1 -0
  289. package/package.json +133 -16
  290. package/dist/cjs/Alert/alert.module.css.js.map +0 -1
  291. package/dist/cjs/Alert/index.js +0 -33
  292. package/dist/cjs/Alert/index.js.map +0 -1
  293. package/dist/cjs/Button/button.module.css.js.map +0 -1
  294. package/dist/cjs/Button/index.js +0 -34
  295. package/dist/cjs/Button/index.js.map +0 -1
  296. package/dist/cjs/Checkbox/checkbox.module.css.js.map +0 -1
  297. package/dist/cjs/Checkbox/index.js +0 -48
  298. package/dist/cjs/Checkbox/index.js.map +0 -1
  299. package/dist/cjs/Chip/chip.module.css.js.map +0 -1
  300. package/dist/cjs/Chip/index.js.map +0 -1
  301. package/dist/cjs/Skeleton/index.js +0 -21
  302. package/dist/cjs/Skeleton/index.js.map +0 -1
  303. package/dist/cjs/Skeleton/skeleton.module.css.js.map +0 -1
  304. package/dist/cjs/Switch/index.js.map +0 -1
  305. package/dist/cjs/Switch/switch.module.css.js.map +0 -1
  306. package/dist/cjs/TextInput/index.js.map +0 -1
  307. package/dist/cjs/TextInput/textinput.module.css.js.map +0 -1
  308. package/dist/cjs/ThemeProvider/index.js +0 -15
  309. package/dist/cjs/ThemeProvider/index.js.map +0 -1
  310. package/dist/cjs/ThemeProvider/themeprovider.module.css.js.map +0 -1
  311. package/dist/cjs/index.js +0 -23
  312. package/dist/cjs/index.js.map +0 -1
  313. package/dist/esm/Alert/alert.module.css.js.map +0 -1
  314. package/dist/esm/Alert/index.js +0 -29
  315. package/dist/esm/Alert/index.js.map +0 -1
  316. package/dist/esm/Button/button.module.css.js.map +0 -1
  317. package/dist/esm/Button/index.js +0 -30
  318. package/dist/esm/Button/index.js.map +0 -1
  319. package/dist/esm/Checkbox/checkbox.module.css.js.map +0 -1
  320. package/dist/esm/Checkbox/index.js +0 -44
  321. package/dist/esm/Checkbox/index.js.map +0 -1
  322. package/dist/esm/Chip/chip.module.css.js.map +0 -1
  323. package/dist/esm/Chip/index.js.map +0 -1
  324. package/dist/esm/Skeleton/index.js +0 -17
  325. package/dist/esm/Skeleton/index.js.map +0 -1
  326. package/dist/esm/Skeleton/skeleton.module.css.js.map +0 -1
  327. package/dist/esm/Switch/index.js +0 -36
  328. package/dist/esm/Switch/index.js.map +0 -1
  329. package/dist/esm/Switch/switch.module.css.js.map +0 -1
  330. package/dist/esm/TextInput/index.js +0 -29
  331. package/dist/esm/TextInput/index.js.map +0 -1
  332. package/dist/esm/TextInput/textinput.module.css.js.map +0 -1
  333. package/dist/esm/ThemeProvider/index.js +0 -11
  334. package/dist/esm/ThemeProvider/index.js.map +0 -1
  335. package/dist/esm/ThemeProvider/themeprovider.module.css.js.map +0 -1
  336. package/dist/esm/index.js +0 -10
  337. package/dist/esm/index.js.map +0 -1
  338. package/dist/tsconfig.lib.tsbuildinfo +0 -1
@@ -0,0 +1,43 @@
1
+ 'use client';
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import clsx from 'clsx';
4
+ import React, { useId, useRef, useLayoutEffect } from 'react';
5
+ import { CheckIcon, MinusIcon } from '../Icons/index.mjs';
6
+ import styles from './checkbox.module.css.mjs';
7
+
8
+ const SizeClassMap = {
9
+ sm: styles['checkbox-sm'],
10
+ md: styles['checkbox-md'],
11
+ lg: styles['checkbox-lg']
12
+ };
13
+ const Checkbox = React.forwardRef(function Checkbox({ label, hideLabel = false, size = 'md', indeterminate = false, className, style, id, disabled = false, ...inputProps }, forwardedRef) {
14
+ const generatedId = useId();
15
+ const inputId = id ?? generatedId;
16
+ const internalRef = useRef(null);
17
+ useLayoutEffect(() => {
18
+ if (internalRef.current) {
19
+ internalRef.current.indeterminate = indeterminate;
20
+ }
21
+ }, [indeterminate]);
22
+ const setRef = (node) => {
23
+ internalRef.current = node;
24
+ if (node) {
25
+ node.indeterminate = indeterminate;
26
+ }
27
+ if (typeof forwardedRef === 'function') {
28
+ forwardedRef(node);
29
+ }
30
+ else if (forwardedRef) {
31
+ forwardedRef.current = node;
32
+ }
33
+ };
34
+ return (jsxs("div", { className: clsx(styles['checkbox-container'], className), style: style, children: [jsxs("span", { className: clsx(styles.checkbox, SizeClassMap[size], {
35
+ [styles['checkbox-disabled']]: disabled
36
+ }), "aria-disabled": disabled || undefined, children: [jsx("input", { type: 'checkbox', id: inputId, disabled: disabled, ref: setRef, "aria-checked": indeterminate ? 'mixed' : undefined, ...inputProps }), jsxs("span", { className: styles['checkbox-box'], "aria-hidden": 'true', children: [jsx(CheckIcon, { className: styles['check-icon'], strokeWidth: 'bold', size: 'md' }), jsx(MinusIcon, { className: styles['indeterminate-icon'], strokeWidth: 'bold', size: 'md' })] })] }), jsx("label", { htmlFor: inputId, className: clsx(styles.label, {
37
+ [styles['visually-hidden']]: hideLabel
38
+ }), children: label })] }));
39
+ });
40
+ Checkbox.displayName = 'Checkbox';
41
+
42
+ export { Checkbox as default };
43
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/Checkbox/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;;;;;AAuBA,MAAM,YAAY,GAAiC;AACjD,IAAA,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC;AACzB,IAAA,EAAE,EAAE,MAAM,CAAC,aAAa,CAAC;AACzB,IAAA,EAAE,EAAE,MAAM,CAAC,aAAa;CACzB;AAED,MAAM,QAAQ,GAAsB,KAAK,CAAC,UAAU,CAGlD,SAAS,QAAQ,CACjB,EACE,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,IAAI,GAAG,IAAI,EACX,aAAa,GAAG,KAAK,EACrB,SAAS,EACT,KAAK,EACL,EAAE,EACF,QAAQ,GAAG,KAAK,EAChB,GAAG,UAAU,EACd,EACD,YAAY,EAAA;AAEZ,IAAA,MAAM,WAAW,GAAG,KAAK,EAAE;AAC3B,IAAA,MAAM,OAAO,GAAG,EAAE,IAAI,WAAW;AACjC,IAAA,MAAM,WAAW,GAAG,MAAM,CAA0B,IAAI,CAAC;IAEzD,eAAe,CAAC,MAAK;AACnB,QAAA,IAAI,WAAW,CAAC,OAAO,EAAE;AACvB,YAAA,WAAW,CAAC,OAAO,CAAC,aAAa,GAAG,aAAa;QACnD;AACF,IAAA,CAAC,EAAE,CAAC,aAAa,CAAC,CAAC;AAEnB,IAAA,MAAM,MAAM,GAAG,CAAC,IAA6B,KAAI;AAC/C,QAAA,WAAW,CAAC,OAAO,GAAG,IAAI;QAC1B,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,aAAa,GAAG,aAAa;QACpC;AACA,QAAA,IAAI,OAAO,YAAY,KAAK,UAAU,EAAE;YACtC,YAAY,CAAC,IAAI,CAAC;QACpB;aAAO,IAAI,YAAY,EAAE;AACvB,YAAA,YAAY,CAAC,OAAO,GAAG,IAAI;QAC7B;AACF,IAAA,CAAC;AAED,IAAA,QACEA,IAAA,CAAA,KAAA,EAAA,EACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,oBAAoB,CAAC,EAAE,SAAS,CAAC,EACxD,KAAK,EAAE,KAAK,EAAA,QAAA,EAAA,CAEZA,IAAA,CAAA,MAAA,EAAA,EACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,YAAY,CAAC,IAAI,CAAC,EAAE;AACnD,oBAAA,CAAC,MAAM,CAAC,mBAAmB,CAAC,GAAG;iBAChC,CAAC,EAAA,eAAA,EACa,QAAQ,IAAI,SAAS,aAEpCC,GAAA,CAAA,OAAA,EAAA,EACE,IAAI,EAAC,UAAU,EACf,EAAE,EAAE,OAAO,EACX,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,MAAM,EAAA,cAAA,EACG,aAAa,GAAG,OAAO,GAAG,SAAS,EAAA,GAC7C,UAAU,EAAA,CACd,EACFD,eAAM,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,EAAA,aAAA,EAAc,MAAM,EAAA,QAAA,EAAA,CACzDC,GAAA,CAAC,SAAS,EAAA,EACR,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,EAC/B,WAAW,EAAC,MAAM,EAClB,IAAI,EAAC,IAAI,EAAA,CACT,EACFA,GAAA,CAAC,SAAS,IACR,SAAS,EAAE,MAAM,CAAC,oBAAoB,CAAC,EACvC,WAAW,EAAC,MAAM,EAClB,IAAI,EAAC,IAAI,EAAA,CACT,CAAA,EAAA,CACG,CAAA,EAAA,CACF,EACPA,GAAA,CAAA,OAAA,EAAA,EACE,OAAO,EAAE,OAAO,EAChB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE;AAC5B,oBAAA,CAAC,MAAM,CAAC,iBAAiB,CAAC,GAAG;AAC9B,iBAAA,CAAC,EAAA,QAAA,EAED,KAAK,EAAA,CACA,CAAA,EAAA,CACJ;AAEV,CAAC;AAED,QAAQ,CAAC,WAAW,GAAG,UAAU;;;;"}
@@ -2,4 +2,4 @@
2
2
  var styles = {"chip-outlined":"chip-module_chip-outlined__nsWch","chip-default":"chip-module_chip-default__W71L9","chip-default-clickable":"chip-module_chip-default-clickable__xqeqN","chip-outlined-clickable":"chip-module_chip-outlined-clickable__slYmY","chip-text":"chip-module_chip-text__VIJnW"};
3
3
 
4
4
  export { styles as default };
5
- //# sourceMappingURL=chip.module.css.js.map
5
+ //# sourceMappingURL=chip.module.css.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chip.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -1,9 +1,8 @@
1
1
  'use client';
2
- import { __rest } from 'tslib';
3
2
  import { jsx } from 'react/jsx-runtime';
4
3
  import clsx from 'clsx';
5
4
  import React from 'react';
6
- import styles from './chip.module.css.js';
5
+ import styles from './chip.module.css.mjs';
7
6
 
8
7
  const VariantDefaultMap = {
9
8
  default: styles['chip-default'],
@@ -13,9 +12,8 @@ const VariantClickableMap = {
13
12
  default: styles['chip-default-clickable'],
14
13
  outlined: styles['chip-outlined-clickable']
15
14
  };
16
- function ChipInner(_a, ref) {
17
- var { label, onClick, as, style, className, variant = 'default' } = _a, elementProps = __rest(_a, ["label", "onClick", "as", "style", "className", "variant"]);
18
- const resolvedElement = as !== null && as !== void 0 ? as : (onClick ? 'button' : 'span');
15
+ const Chip = React.forwardRef(function Chip({ label, onClick, as, style, className, variant = 'default', ...elementProps }, ref) {
16
+ const resolvedElement = as ?? (onClick ? 'button' : 'span');
19
17
  const Component = resolvedElement;
20
18
  const href = resolvedElement === 'a'
21
19
  ? elementProps.href
@@ -36,11 +34,9 @@ function ChipInner(_a, ref) {
36
34
  const classes = clsx(VariantDefaultMap[variant], {
37
35
  [VariantClickableMap[variant]]: isInteractive
38
36
  }, className);
39
- return (jsx(Component, Object.assign({}, elementProps, { ref: ref, className: classes, onClick: onClick, style: style, type: resolvedElement === 'button' ? 'button' : undefined, role: isNonNativeInteractive ? 'button' : undefined, tabIndex: isNonNativeInteractive ? 0 : undefined, onKeyDown: isNonNativeInteractive ? handleKeyDown : undefined, children: jsx("span", { className: styles['chip-text'], children: label }) })));
40
- }
41
- const ForwardedChip = React.forwardRef(ChipInner);
42
- ForwardedChip.displayName = 'Chip';
43
- const Chip = ForwardedChip;
37
+ return (jsx(Component, { ...elementProps, ref: ref, className: classes, onClick: onClick, style: style, type: resolvedElement === 'button' ? 'button' : undefined, role: isNonNativeInteractive ? 'button' : undefined, tabIndex: isNonNativeInteractive ? 0 : undefined, onKeyDown: isNonNativeInteractive ? handleKeyDown : undefined, children: jsx("span", { className: styles['chip-text'], children: label }) }));
38
+ });
39
+ Chip.displayName = 'Chip';
44
40
 
45
41
  export { Chip as default };
46
- //# sourceMappingURL=index.js.map
42
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/Chip/index.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":";;;;;;AAiCA,MAAM,iBAAiB,GAA4B;AACjD,IAAA,OAAO,EAAE,MAAM,CAAC,cAAc,CAAC;AAC/B,IAAA,QAAQ,EAAE,MAAM,CAAC,eAAe;CACjC;AAED,MAAM,mBAAmB,GAA4B;AACnD,IAAA,OAAO,EAAE,MAAM,CAAC,wBAAwB,CAAC;AACzC,IAAA,QAAQ,EAAE,MAAM,CAAC,yBAAyB;CAC3C;AAMD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,SAAS,IAAI,CACzC,EACE,KAAK,EACL,OAAO,EACP,EAAE,EACF,KAAK,EACL,SAAS,EACT,OAAO,GAAG,SAAS,EACnB,GAAG,YAAY,EACQ,EACzB,GAAgC,EAAA;AAEhC,IAAA,MAAM,eAAe,GAAG,EAAE,KAAK,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;IAC3D,MAAM,SAAS,GAAG,eAAoC;AACtD,IAAA,MAAM,IAAI,GACR,eAAe,KAAK;UACf,YAA8D,CAAC;UAChE,SAAS;AACf,IAAA,MAAM,OAAO,GAAG,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;AAClE,IAAA,MAAM,aAAa,GACjB,eAAe,KAAK,QAAQ;AAC5B,SAAC,eAAe,KAAK,GAAG,IAAI,OAAO,CAAC;QACpC,OAAO,CAAC,OAAO,CAAC;IAElB,MAAM,sBAAsB,GAC1B,aAAa,IAAI,eAAe,KAAK,QAAQ,IAAI,eAAe,KAAK,GAAG;IAE1E,MAAM,aAAa,GAAG;AACpB,UAAE,CAAC,KAA0B,KAAI;AAC7B,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,OAAO,IAAI,KAAK,CAAC,GAAG,KAAK,GAAG,EAAE;gBAC9C,KAAK,CAAC,cAAc,EAAE;AACrB,gBAAA,KAAK,CAAC,aAA6B,CAAC,KAAK,EAAE;YAC9C;QACF;UACA,SAAS;IAEb,MAAM,OAAO,GAAG,IAAI,CAClB,iBAAiB,CAAC,OAAO,CAAC,EAC1B;AACE,QAAA,CAAC,mBAAmB,CAAC,OAAO,CAAC,GAAG;KACjC,EACD,SAAS,CACV;AAED,IAAA,QACEA,GAAA,CAAC,SAAS,OACJ,YAAY,EAChB,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,OAAO,EAClB,OAAO,EAAE,OAAO,EAChB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,eAAe,KAAK,QAAQ,GAAG,QAAQ,GAAG,SAAS,EACzD,IAAI,EAAE,sBAAsB,GAAG,QAAQ,GAAG,SAAS,EACnD,QAAQ,EAAE,sBAAsB,GAAG,CAAC,GAAG,SAAS,EAChD,SAAS,EAAE,sBAAsB,GAAG,aAAa,GAAG,SAAS,EAAA,QAAA,EAE7DA,cAAM,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,EAAA,QAAA,EAAG,KAAK,EAAA,CAAQ,EAAA,CAC1C;AAEhB,CAAC;AAED,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
@@ -0,0 +1,5 @@
1
+ 'use client';
2
+ var styles = {"dialog_root":"dialog-module_dialog_root__jMqkW","dialog_content":"dialog-module_dialog_content__0IqkB","dialog_header":"dialog-module_dialog_header__VSRxM","dialog_title":"dialog-module_dialog_title__Mw7jc","dialog_close":"dialog-module_dialog_close__tuhJi","dialog_close_icon":"dialog-module_dialog_close_icon__5hPpw","dialog_description":"dialog-module_dialog_description__fh-8z","dialog_body":"dialog-module_dialog_body__5qjkS"};
3
+
4
+ export { styles as default };
5
+ //# sourceMappingURL=dialog.module.css.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dialog.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,190 @@
1
+ 'use client';
2
+ import { jsx, jsxs } from 'react/jsx-runtime';
3
+ import clsx from 'clsx';
4
+ import React, { createContext, useContext, useId, useState } from 'react';
5
+ import { createPortal } from 'react-dom';
6
+ import { CloseIcon } from '../Icons/index.mjs';
7
+ import { mergeRefs } from '../utils/mergeRefs.mjs';
8
+ import { Slot } from '../utils/slot.mjs';
9
+ import styles from './dialog.module.css.mjs';
10
+
11
+ const DialogContext = createContext(null);
12
+ function useDialogContext() {
13
+ const context = useContext(DialogContext);
14
+ if (!context) {
15
+ throw new Error('Dialog components must be wrapped in <Dialog>');
16
+ }
17
+ return context;
18
+ }
19
+ const DialogRoot = function Dialog({ open, defaultOpen = false, onOpenChange, children }) {
20
+ const idPrefix = useId();
21
+ const isControlled = open !== undefined;
22
+ const [uncontrolledOpen, setUncontrolledOpen] = useState(defaultOpen);
23
+ const currentOpen = isControlled ? open : uncontrolledOpen;
24
+ const handleOpenChange = React.useCallback((nextOpen) => {
25
+ if (!isControlled) {
26
+ setUncontrolledOpen(nextOpen);
27
+ }
28
+ onOpenChange?.(nextOpen);
29
+ }, [isControlled, onOpenChange]);
30
+ const contextValue = React.useMemo(() => ({ open: currentOpen, onOpenChange: handleOpenChange, idPrefix }), [currentOpen, handleOpenChange, idPrefix]);
31
+ return (jsx(DialogContext.Provider, { value: contextValue, children: children }));
32
+ };
33
+ DialogRoot.displayName = 'Dialog';
34
+ const DialogTrigger = React.forwardRef(function DialogTrigger({ children, asChild = false, onClick, type, ...triggerProps }, ref) {
35
+ const { open, onOpenChange, idPrefix } = useDialogContext();
36
+ const handleClick = (event) => {
37
+ onClick?.(event);
38
+ if (!event.defaultPrevented) {
39
+ onOpenChange(!open);
40
+ }
41
+ };
42
+ if (asChild) {
43
+ if (!React.isValidElement(children)) {
44
+ throw new Error('Dialog.Trigger with asChild expects a single valid React element child.');
45
+ }
46
+ return (jsx(Slot, { ref: ref, ...triggerProps, onClick: handleClick, "aria-haspopup": 'dialog', "aria-expanded": open, "aria-controls": `${idPrefix}-dialog`, children: children }));
47
+ }
48
+ return (jsx("button", { ref: ref, ...triggerProps, type: type ?? 'button', onClick: handleClick, "aria-haspopup": 'dialog', "aria-expanded": open, "aria-controls": `${idPrefix}-dialog`, children: children }));
49
+ });
50
+ DialogTrigger.displayName = 'Dialog.Trigger';
51
+ const DialogContent = React.forwardRef(function DialogContent({ closeLabel = 'Close dialog', closeOnEscape = true, closeOnOverlayClick = true, hideCloseButton = false, className, containerClassName, children, ...props }, ref) {
52
+ const { open, onOpenChange, idPrefix } = useDialogContext();
53
+ const dialogRef = React.useRef(null);
54
+ const previousFocusedElementRef = React.useRef(null);
55
+ const [mounted, setMounted] = React.useState(open);
56
+ const dialogId = `${idPrefix}-dialog`;
57
+ const titleId = `${idPrefix}-title`;
58
+ const descriptionId = `${idPrefix}-description`;
59
+ React.useEffect(() => {
60
+ if (open) {
61
+ setMounted(true);
62
+ if (document.activeElement instanceof HTMLElement) {
63
+ previousFocusedElementRef.current = document.activeElement;
64
+ }
65
+ return;
66
+ }
67
+ previousFocusedElementRef.current?.focus();
68
+ previousFocusedElementRef.current = null;
69
+ }, [open]);
70
+ React.useEffect(() => {
71
+ if (!mounted)
72
+ return;
73
+ const dialogElement = dialogRef.current;
74
+ if (!dialogElement)
75
+ return;
76
+ const canShowModal = typeof dialogElement.showModal === 'function';
77
+ if (open) {
78
+ if (!dialogElement.open) {
79
+ if (canShowModal) {
80
+ dialogElement.showModal();
81
+ }
82
+ else {
83
+ dialogElement.setAttribute('open', '');
84
+ }
85
+ }
86
+ return;
87
+ }
88
+ if (dialogElement.open || dialogElement.hasAttribute('open')) {
89
+ if (typeof dialogElement.close === 'function') {
90
+ dialogElement.close();
91
+ }
92
+ else {
93
+ dialogElement.removeAttribute('open');
94
+ }
95
+ }
96
+ const timer = setTimeout(() => setMounted(false), 250);
97
+ return () => clearTimeout(timer);
98
+ }, [open, mounted]);
99
+ React.useEffect(() => {
100
+ if (!open || !closeOnEscape)
101
+ return;
102
+ const dialogElement = dialogRef.current;
103
+ if (!dialogElement || typeof dialogElement.showModal === 'function')
104
+ return;
105
+ const handleEscape = (event) => {
106
+ if (event.key === 'Escape') {
107
+ event.preventDefault();
108
+ onOpenChange(false);
109
+ }
110
+ };
111
+ document.addEventListener('keydown', handleEscape);
112
+ return () => document.removeEventListener('keydown', handleEscape);
113
+ }, [open, closeOnEscape, onOpenChange]);
114
+ React.useEffect(() => {
115
+ if (!open)
116
+ return;
117
+ const dialogElement = dialogRef.current;
118
+ if (!dialogElement || typeof dialogElement.showModal === 'function')
119
+ return;
120
+ const previousOverflow = document.body.style.overflow;
121
+ document.body.style.overflow = 'hidden';
122
+ return () => {
123
+ document.body.style.overflow = previousOverflow;
124
+ };
125
+ }, [open]);
126
+ React.useEffect(() => {
127
+ const dialogElement = dialogRef.current;
128
+ if (!dialogElement || !closeOnOverlayClick)
129
+ return;
130
+ const handleDialogClick = (event) => {
131
+ if (event.target === dialogElement) {
132
+ onOpenChange(false);
133
+ }
134
+ };
135
+ dialogElement.addEventListener('click', handleDialogClick);
136
+ return () => dialogElement.removeEventListener('click', handleDialogClick);
137
+ }, [closeOnOverlayClick, onOpenChange]);
138
+ if (typeof document === 'undefined' || !mounted)
139
+ return null;
140
+ return createPortal(jsx("dialog", { id: dialogId, ref: mergeRefs(dialogRef, ref), "aria-labelledby": titleId, "aria-describedby": descriptionId, className: clsx(styles.dialog_root, containerClassName), onCancel: (event) => {
141
+ if (!closeOnEscape) {
142
+ event.preventDefault();
143
+ }
144
+ }, onClose: () => {
145
+ if (open) {
146
+ onOpenChange(false);
147
+ }
148
+ }, children: jsxs("div", { className: clsx(styles.dialog_content, className), ...props, children: [!hideCloseButton && (jsx("button", { type: 'button', className: styles.dialog_close, onClick: () => onOpenChange(false), "aria-label": closeLabel, children: jsx(CloseIcon, { size: 16, className: styles.dialog_close_icon }) })), children] }) }), document.body);
149
+ });
150
+ DialogContent.displayName = 'Dialog.Content';
151
+ const DialogHeader = React.forwardRef(function DialogHeader({ className, ...props }, ref) {
152
+ return (jsx("div", { ref: ref, className: clsx(styles.dialog_header, className), ...props }));
153
+ });
154
+ DialogHeader.displayName = 'Dialog.Header';
155
+ const DialogTitle = React.forwardRef(function DialogTitle({ className, children, ...props }, ref) {
156
+ const { idPrefix } = useDialogContext();
157
+ return (jsx("h2", { ref: ref, id: `${idPrefix}-title`, className: clsx(styles.dialog_title, className), ...props, children: children }));
158
+ });
159
+ DialogTitle.displayName = 'Dialog.Title';
160
+ const DialogDescription = React.forwardRef(function DialogDescription({ className, children, ...props }, ref) {
161
+ const { idPrefix } = useDialogContext();
162
+ return (jsx("p", { ref: ref, id: `${idPrefix}-description`, className: clsx(styles.dialog_description, className), ...props, children: children }));
163
+ });
164
+ DialogDescription.displayName = 'Dialog.Description';
165
+ const DialogBody = React.forwardRef(function DialogBody({ className, ...props }, ref) {
166
+ return (jsx("div", { ref: ref, className: clsx(styles.dialog_body, className), ...props }));
167
+ });
168
+ DialogBody.displayName = 'Dialog.Body';
169
+ const DialogFooter = React.forwardRef(function DialogFooter({ className, ...props }, ref) {
170
+ return (jsx("div", { ref: ref, className: clsx(styles.dialog_body, className), style: {
171
+ display: 'flex',
172
+ justifyContent: 'flex-end',
173
+ gap: '8px',
174
+ marginTop: '16px',
175
+ ...props.style
176
+ }, ...props }));
177
+ });
178
+ DialogFooter.displayName = 'Dialog.Footer';
179
+ const Dialog = Object.assign(DialogRoot, {
180
+ Trigger: DialogTrigger,
181
+ Content: DialogContent,
182
+ Header: DialogHeader,
183
+ Title: DialogTitle,
184
+ Description: DialogDescription,
185
+ Body: DialogBody,
186
+ Footer: DialogFooter
187
+ });
188
+
189
+ export { Dialog, Dialog as default };
190
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/Dialog/index.tsx"],"sourcesContent":[null],"names":["_jsx","_jsxs"],"mappings":";;;;;;;;;;AAcA,MAAM,aAAa,GAAG,aAAa,CAA4B,IAAI,CAAC;AAEpE,SAAS,gBAAgB,GAAA;AACvB,IAAA,MAAM,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC;IACzC,IAAI,CAAC,OAAO,EAAE;AACZ,QAAA,MAAM,IAAI,KAAK,CAAC,+CAA+C,CAAC;IAClE;AACA,IAAA,OAAO,OAAO;AAChB;AAcA,MAAM,UAAU,GAAwB,SAAS,MAAM,CAAC,EACtD,IAAI,EACJ,WAAW,GAAG,KAAK,EACnB,YAAY,EACZ,QAAQ,EACc,EAAA;AACtB,IAAA,MAAM,QAAQ,GAAG,KAAK,EAAE;AACxB,IAAA,MAAM,YAAY,GAAG,IAAI,KAAK,SAAS;IACvC,MAAM,CAAC,gBAAgB,EAAE,mBAAmB,CAAC,GAAG,QAAQ,CAAC,WAAW,CAAC;IAErE,MAAM,WAAW,GAAG,YAAY,GAAG,IAAI,GAAG,gBAAgB;IAE1D,MAAM,gBAAgB,GAAG,KAAK,CAAC,WAAW,CACxC,CAAC,QAAiB,KAAI;QACpB,IAAI,CAAC,YAAY,EAAE;YACjB,mBAAmB,CAAC,QAAQ,CAAC;QAC/B;AACA,QAAA,YAAY,GAAG,QAAQ,CAAC;AAC1B,IAAA,CAAC,EACD,CAAC,YAAY,EAAE,YAAY,CAAC,CAC7B;AAED,IAAA,MAAM,YAAY,GAAG,KAAK,CAAC,OAAO,CAChC,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,YAAY,EAAE,gBAAgB,EAAE,QAAQ,EAAE,CAAC,EACvE,CAAC,WAAW,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAC1C;AAED,IAAA,QACEA,GAAA,CAAC,aAAa,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,YAAY,EAAA,QAAA,EACxC,QAAQ,EAAA,CACc;AAE7B,CAAC;AACD,UAAU,CAAC,WAAW,GAAG,QAAQ;AAWjC,MAAM,aAAa,GAA2B,KAAK,CAAC,UAAU,CAG5D,SAAS,aAAa,CACtB,EAAE,QAAQ,EAAE,OAAO,GAAG,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,YAAY,EAAE,EAC7D,GAAG,EAAA;IAEH,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE;AAE3D,IAAA,MAAM,WAAW,GAAyC,CAAC,KAAK,KAAI;AAClE,QAAA,OAAO,GAAG,KAA4C,CAAC;AACvD,QAAA,IAAI,CAAC,KAAK,CAAC,gBAAgB,EAAE;AAC3B,YAAA,YAAY,CAAC,CAAC,IAAI,CAAC;QACrB;AACF,IAAA,CAAC;IAED,IAAI,OAAO,EAAE;QACX,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;AACnC,YAAA,MAAM,IAAI,KAAK,CACb,yEAAyE,CAC1E;QACH;QAEA,QACEA,GAAA,CAAC,IAAI,EAAA,EACH,GAAG,EAAE,GAAG,EAAA,GACJ,YAAY,EAChB,OAAO,EAAE,WAAW,EAAA,eAAA,EACN,QAAQ,EAAA,eAAA,EACP,IAAI,EAAA,eAAA,EACJ,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAS,EAAA,QAAA,EAElC,QAAQ,EAAA,CACJ;IAEX;AAEA,IAAA,QACEA,GAAA,CAAA,QAAA,EAAA,EACE,GAAG,EAAE,GAAmC,EAAA,GACpC,YAAY,EAChB,IAAI,EAAE,IAAI,IAAI,QAAQ,EACtB,OAAO,EAAE,WAAyD,EAAA,eAAA,EACpD,QAAQ,EAAA,eAAA,EACP,IAAI,EAAA,eAAA,EACJ,CAAA,EAAG,QAAQ,CAAA,OAAA,CAAS,EAAA,QAAA,EAElC,QAAQ,EAAA,CACF;AAEb,CAAC,CAAC;AACF,aAAa,CAAC,WAAW,GAAG,gBAAgB;AAc5C,MAAM,aAAa,GAA2B,KAAK,CAAC,UAAU,CAG5D,SAAS,aAAa,CACtB,EACE,UAAU,GAAG,cAAc,EAC3B,aAAa,GAAG,IAAI,EACpB,mBAAmB,GAAG,IAAI,EAC1B,eAAe,GAAG,KAAK,EACvB,SAAS,EACT,kBAAkB,EAClB,QAAQ,EACR,GAAG,KAAK,EACT,EACD,GAAG,EAAA;IAEH,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE;IAC3D,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAA2B,IAAI,CAAC;IAC9D,MAAM,yBAAyB,GAAG,KAAK,CAAC,MAAM,CAAqB,IAAI,CAAC;AACxE,IAAA,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC;AAElD,IAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,QAAQ,SAAS;AACrC,IAAA,MAAM,OAAO,GAAG,CAAA,EAAG,QAAQ,QAAQ;AACnC,IAAA,MAAM,aAAa,GAAG,CAAA,EAAG,QAAQ,cAAc;AAE/C,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;QACnB,IAAI,IAAI,EAAE;YACR,UAAU,CAAC,IAAI,CAAC;AAChB,YAAA,IAAI,QAAQ,CAAC,aAAa,YAAY,WAAW,EAAE;AACjD,gBAAA,yBAAyB,CAAC,OAAO,GAAG,QAAQ,CAAC,aAAa;YAC5D;YACA;QACF;AACA,QAAA,yBAAyB,CAAC,OAAO,EAAE,KAAK,EAAE;AAC1C,QAAA,yBAAyB,CAAC,OAAO,GAAG,IAAI;AAC1C,IAAA,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAEV,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,IAAI,CAAC,OAAO;YAAE;AACd,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;AACvC,QAAA,IAAI,CAAC,aAAa;YAAE;QAEpB,MAAM,YAAY,GAAG,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU;QAElE,IAAI,IAAI,EAAE;AACR,YAAA,IAAI,CAAC,aAAa,CAAC,IAAI,EAAE;gBACvB,IAAI,YAAY,EAAE;oBAChB,aAAa,CAAC,SAAS,EAAE;gBAC3B;qBAAO;AACL,oBAAA,aAAa,CAAC,YAAY,CAAC,MAAM,EAAE,EAAE,CAAC;gBACxC;YACF;YACA;QACF;QAEA,IAAI,aAAa,CAAC,IAAI,IAAI,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,EAAE;AAC5D,YAAA,IAAI,OAAO,aAAa,CAAC,KAAK,KAAK,UAAU,EAAE;gBAC7C,aAAa,CAAC,KAAK,EAAE;YACvB;iBAAO;AACL,gBAAA,aAAa,CAAC,eAAe,CAAC,MAAM,CAAC;YACvC;QACF;AAEA,QAAA,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,UAAU,CAAC,KAAK,CAAC,EAAE,GAAG,CAAC;AACtD,QAAA,OAAO,MAAM,YAAY,CAAC,KAAK,CAAC;AAClC,IAAA,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;AAEnB,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,IAAI,CAAC,IAAI,IAAI,CAAC,aAAa;YAAE;AAE7B,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;QACvC,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU;YAAE;AAErE,QAAA,MAAM,YAAY,GAAG,CAAC,KAAoB,KAAI;AAC5C,YAAA,IAAI,KAAK,CAAC,GAAG,KAAK,QAAQ,EAAE;gBAC1B,KAAK,CAAC,cAAc,EAAE;gBACtB,YAAY,CAAC,KAAK,CAAC;YACrB;AACF,QAAA,CAAC;AAED,QAAA,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,YAAY,CAAC;QAClD,OAAO,MAAM,QAAQ,CAAC,mBAAmB,CAAC,SAAS,EAAE,YAAY,CAAC;IACpE,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,EAAE,YAAY,CAAC,CAAC;AAEvC,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,IAAI,CAAC,IAAI;YAAE;AAEX,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;QACvC,IAAI,CAAC,aAAa,IAAI,OAAO,aAAa,CAAC,SAAS,KAAK,UAAU;YAAE;QAErE,MAAM,gBAAgB,GAAG,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ;QACrD,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,QAAQ;AAEvC,QAAA,OAAO,MAAK;YACV,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,gBAAgB;AACjD,QAAA,CAAC;AACH,IAAA,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC;AAEV,IAAA,KAAK,CAAC,SAAS,CAAC,MAAK;AACnB,QAAA,MAAM,aAAa,GAAG,SAAS,CAAC,OAAO;AACvC,QAAA,IAAI,CAAC,aAAa,IAAI,CAAC,mBAAmB;YAAE;AAE5C,QAAA,MAAM,iBAAiB,GAAG,CAAC,KAAiB,KAAI;AAC9C,YAAA,IAAI,KAAK,CAAC,MAAM,KAAK,aAAa,EAAE;gBAClC,YAAY,CAAC,KAAK,CAAC;YACrB;AACF,QAAA,CAAC;AAED,QAAA,aAAa,CAAC,gBAAgB,CAAC,OAAO,EAAE,iBAAiB,CAAC;QAC1D,OAAO,MAAM,aAAa,CAAC,mBAAmB,CAAC,OAAO,EAAE,iBAAiB,CAAC;AAC5E,IAAA,CAAC,EAAE,CAAC,mBAAmB,EAAE,YAAY,CAAC,CAAC;AAEvC,IAAA,IAAI,OAAO,QAAQ,KAAK,WAAW,IAAI,CAAC,OAAO;AAAE,QAAA,OAAO,IAAI;AAE5D,IAAA,OAAO,YAAY,CACjBA,GAAA,CAAA,QAAA,EAAA,EACE,EAAE,EAAE,QAAQ,EACZ,GAAG,EAAE,SAAS,CAAC,SAAS,EAAE,GAAG,CAAC,qBACb,OAAO,EAAA,kBAAA,EACN,aAAa,EAC/B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,kBAAkB,CAAC,EACvD,QAAQ,EAAE,CAAC,KAAK,KAAI;YAClB,IAAI,CAAC,aAAa,EAAE;gBAClB,KAAK,CAAC,cAAc,EAAE;YACxB;AACF,QAAA,CAAC,EACD,OAAO,EAAE,MAAK;YACZ,IAAI,IAAI,EAAE;gBACR,YAAY,CAAC,KAAK,CAAC;YACrB;AACF,QAAA,CAAC,EAAA,QAAA,EAEDC,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,SAAS,CAAC,KAAM,KAAK,EAAA,QAAA,EAAA,CAC9D,CAAC,eAAe,KACfD,GAAA,CAAA,QAAA,EAAA,EACE,IAAI,EAAC,QAAQ,EACb,SAAS,EAAE,MAAM,CAAC,YAAY,EAC9B,OAAO,EAAE,MAAM,YAAY,CAAC,KAAK,CAAC,EAAA,YAAA,EACtB,UAAU,EAAA,QAAA,EAEtBA,GAAA,CAAC,SAAS,EAAA,EAAC,IAAI,EAAE,EAAE,EAAE,SAAS,EAAE,MAAM,CAAC,iBAAiB,EAAA,CAAI,EAAA,CACrD,CACV,EACA,QAAQ,CAAA,EAAA,CACL,EAAA,CACC,EACT,QAAQ,CAAC,IAAI,CACd;AACH,CAAC,CAAC;AACF,aAAa,CAAC,WAAW,GAAG,gBAAgB;AAQ5C,MAAM,YAAY,GAA0B,KAAK,CAAC,UAAU,CAG1D,SAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAA;IAClD,QACEA,aACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,SAAS,CAAC,KAC5C,KAAK,EAAA,CACT;AAEN,CAAC,CAAC;AACF,YAAY,CAAC,WAAW,GAAG,eAAe;AAQ1C,MAAM,WAAW,GAAyB,KAAK,CAAC,UAAU,CAGxD,SAAS,WAAW,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAA;AAC3D,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE;AACvC,IAAA,QACEA,GAAA,CAAA,IAAA,EAAA,EACE,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,CAAA,EAAG,QAAQ,CAAA,MAAA,CAAQ,EACvB,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY,EAAE,SAAS,CAAC,EAAA,GAC3C,KAAK,EAAA,QAAA,EAER,QAAQ,EAAA,CACN;AAET,CAAC,CAAC;AACF,WAAW,CAAC,WAAW,GAAG,cAAc;AAQxC,MAAM,iBAAiB,GAA+B,KAAK,CAAC,UAAU,CAGpE,SAAS,iBAAiB,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAA;AACjE,IAAA,MAAM,EAAE,QAAQ,EAAE,GAAG,gBAAgB,EAAE;AACvC,IAAA,QACEA,GAAA,CAAA,GAAA,EAAA,EACE,GAAG,EAAE,GAAG,EACR,EAAE,EAAE,CAAA,EAAG,QAAQ,CAAA,YAAA,CAAc,EAC7B,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,kBAAkB,EAAE,SAAS,CAAC,EAAA,GACjD,KAAK,EAAA,QAAA,EAER,QAAQ,EAAA,CACP;AAER,CAAC,CAAC;AACF,iBAAiB,CAAC,WAAW,GAAG,oBAAoB;AAQpD,MAAM,UAAU,GAAwB,KAAK,CAAC,UAAU,CAGtD,SAAS,UAAU,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAA;IAChD,QACEA,aAAK,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,KAAM,KAAK,EAAA,CAAI;AAEhF,CAAC,CAAC;AACF,UAAU,CAAC,WAAW,GAAG,aAAa;AAQtC,MAAM,YAAY,GAA0B,KAAK,CAAC,UAAU,CAG1D,SAAS,YAAY,CAAC,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,EAAE,GAAG,EAAA;AAClD,IAAA,QACEA,GAAA,CAAA,KAAA,EAAA,EACE,GAAG,EAAE,GAAG,EACR,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,SAAS,CAAC,EAC9C,KAAK,EAAE;AACL,YAAA,OAAO,EAAE,MAAM;AACf,YAAA,cAAc,EAAE,UAAU;AAC1B,YAAA,GAAG,EAAE,KAAK;AACV,YAAA,SAAS,EAAE,MAAM;YACjB,GAAG,KAAK,CAAC;SACV,EAAA,GACG,KAAK,EAAA,CACT;AAEN,CAAC,CAAC;AACF,YAAY,CAAC,WAAW,GAAG,eAAe;MAY7B,MAAM,GAAoB,MAAM,CAAC,MAAM,CAAC,UAAU,EAAE;AAC/D,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,OAAO,EAAE,aAAa;AACtB,IAAA,MAAM,EAAE,YAAY;AACpB,IAAA,KAAK,EAAE,WAAW;AAClB,IAAA,WAAW,EAAE,iBAAiB;AAC9B,IAAA,IAAI,EAAE,UAAU;AAChB,IAAA,MAAM,EAAE;AACT,CAAA;;;;"}
@@ -0,0 +1,5 @@
1
+ 'use client';
2
+ var styles = {"dropdown_menu":"dropdownmenu-module_dropdown_menu__AHiFI","dropdown_menu_item_container":"dropdownmenu-module_dropdown_menu_item_container__FI7MR","dropdown_menu_item":"dropdownmenu-module_dropdown_menu_item__ncHAK","dropdown_menu_item_destructive":"dropdownmenu-module_dropdown_menu_item_destructive__-QIlU"};
3
+
4
+ export { styles as default };
5
+ //# sourceMappingURL=dropdownmenu.module.css.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dropdownmenu.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,148 @@
1
+ 'use client';
2
+ import { jsx } from 'react/jsx-runtime';
3
+ import clsx from 'clsx';
4
+ import React, { useRef, useEffect, useId } from 'react';
5
+ import { createPortal } from 'react-dom';
6
+ import { useControllableState } from '../hooks/useControllableState.mjs';
7
+ import { useDismiss } from '../hooks/useDismiss.mjs';
8
+ import { useFloatingPosition } from '../hooks/useFloatingPosition.mjs';
9
+ import { mergeRefs } from '../utils/mergeRefs.mjs';
10
+ import { Slot } from '../utils/slot.mjs';
11
+ import styles from './dropdownmenu.module.css.mjs';
12
+
13
+ const DropdownMenuContext = React.createContext(null);
14
+ function useDropdownMenuContext() {
15
+ const context = React.useContext(DropdownMenuContext);
16
+ if (!context) {
17
+ throw new Error('DropdownMenu components must be wrapped in <DropdownMenu>');
18
+ }
19
+ return context;
20
+ }
21
+ const DropdownMenuRoot = function DropdownMenu({ open, defaultOpen = false, onOpenChange, placement = 'bottom', offset = 8, closeOnEscape = true, closeOnOutsideClick = true, children }) {
22
+ const idPrefix = useId();
23
+ const triggerRef = useRef(null);
24
+ const [currentOpen, handleOpenChange] = useControllableState(open, defaultOpen, onOpenChange);
25
+ const contextValue = React.useMemo(() => ({
26
+ open: currentOpen,
27
+ onOpenChange: handleOpenChange,
28
+ placement,
29
+ offset,
30
+ idPrefix,
31
+ triggerRef,
32
+ closeOnEscape,
33
+ closeOnOutsideClick
34
+ }), [
35
+ currentOpen,
36
+ handleOpenChange,
37
+ placement,
38
+ offset,
39
+ idPrefix,
40
+ closeOnEscape,
41
+ closeOnOutsideClick
42
+ ]);
43
+ return (jsx(DropdownMenuContext.Provider, { value: contextValue, children: children }));
44
+ };
45
+ DropdownMenuRoot.displayName = 'DropdownMenu';
46
+ const DropdownMenuTrigger = React.forwardRef(function DropdownMenuTrigger({ children, asChild = false, onClick, type, ...triggerProps }, ref) {
47
+ const { open, onOpenChange, idPrefix, triggerRef } = useDropdownMenuContext();
48
+ const mergedRef = mergeRefs(ref, triggerRef);
49
+ const handleClick = (event) => {
50
+ onClick?.(event);
51
+ if (!event.defaultPrevented) {
52
+ onOpenChange(!open);
53
+ }
54
+ };
55
+ if (asChild) {
56
+ if (!React.isValidElement(children)) {
57
+ throw new Error('DropdownMenu.Trigger with asChild expects a single valid React element child.');
58
+ }
59
+ return (jsx(Slot, { ref: mergedRef, ...triggerProps, onClick: handleClick, "aria-haspopup": 'menu', "aria-expanded": open, "aria-controls": `${idPrefix}-menu`, children: children }));
60
+ }
61
+ return (jsx("button", { ref: mergedRef, ...triggerProps, type: type ?? 'button', onClick: handleClick, "aria-haspopup": 'menu', "aria-expanded": open, "aria-controls": `${idPrefix}-menu`, children: children }));
62
+ });
63
+ DropdownMenuTrigger.displayName = 'DropdownMenu.Trigger';
64
+ const DropdownMenuContent = React.forwardRef(function DropdownMenuContent({ className, style, children, ...props }, ref) {
65
+ const { open, onOpenChange, placement, offset, idPrefix, triggerRef, closeOnEscape, closeOnOutsideClick } = useDropdownMenuContext();
66
+ const menuRef = useRef(null);
67
+ const position = useFloatingPosition(triggerRef, menuRef, {
68
+ open,
69
+ placement,
70
+ offset,
71
+ align: 'start'
72
+ });
73
+ useDismiss({
74
+ open,
75
+ onClose: () => onOpenChange(false),
76
+ triggerRef,
77
+ contentRef: menuRef,
78
+ closeOnEscape,
79
+ closeOnOutsideClick,
80
+ returnFocusOnClose: true
81
+ });
82
+ useEffect(() => {
83
+ if (!open || !menuRef.current)
84
+ return;
85
+ // Auto-focus first enabled item
86
+ const firstItem = menuRef.current.querySelector('[role="menuitem"]:not([disabled])');
87
+ if (firstItem) {
88
+ firstItem.focus();
89
+ }
90
+ }, [open]);
91
+ const handleKeyDown = (event) => {
92
+ if (!menuRef.current)
93
+ return;
94
+ const items = Array.from(menuRef.current.querySelectorAll('[role="menuitem"]:not([disabled])'));
95
+ if (items.length === 0)
96
+ return;
97
+ const currentIndex = items.indexOf(document.activeElement);
98
+ if (event.key === 'ArrowDown') {
99
+ event.preventDefault();
100
+ const nextIndex = (currentIndex + 1) % items.length;
101
+ items[nextIndex]?.focus();
102
+ }
103
+ if (event.key === 'ArrowUp') {
104
+ event.preventDefault();
105
+ const prevIndex = (currentIndex - 1 + items.length) % items.length;
106
+ items[prevIndex]?.focus();
107
+ }
108
+ if (event.key === 'Home') {
109
+ event.preventDefault();
110
+ items[0]?.focus();
111
+ }
112
+ if (event.key === 'End') {
113
+ event.preventDefault();
114
+ items.at(-1)?.focus();
115
+ }
116
+ };
117
+ if (!open || typeof document === 'undefined')
118
+ return null;
119
+ return createPortal(jsx("menu", { id: `${idPrefix}-menu`, ref: mergeRefs(menuRef, ref), className: clsx(styles.dropdown_menu, className), onKeyDown: handleKeyDown, style: {
120
+ top: position.top,
121
+ left: position.left,
122
+ ...style
123
+ }, ...props, children: children }), document.body);
124
+ });
125
+ DropdownMenuContent.displayName = 'DropdownMenu.Content';
126
+ const DropdownMenuItem = React.forwardRef(function DropdownMenuItem({ disabled, destructive, onSelect, className, children, ...props }, ref) {
127
+ const { onOpenChange, triggerRef } = useDropdownMenuContext();
128
+ const handleClick = (e) => {
129
+ if (disabled)
130
+ return;
131
+ onSelect?.();
132
+ props.onClick?.(e);
133
+ onOpenChange(false);
134
+ triggerRef.current?.focus();
135
+ };
136
+ return (jsx("li", { className: styles.dropdown_menu_item_container, role: 'presentation', children: jsx("button", { ref: ref, type: 'button', role: 'menuitem', disabled: disabled, onClick: handleClick, className: clsx(styles.dropdown_menu_item, className, {
137
+ [styles.dropdown_menu_item_destructive]: destructive
138
+ }), ...props, children: children }) }));
139
+ });
140
+ DropdownMenuItem.displayName = 'DropdownMenu.Item';
141
+ const DropdownMenu = Object.assign(DropdownMenuRoot, {
142
+ Trigger: DropdownMenuTrigger,
143
+ Content: DropdownMenuContent,
144
+ Item: DropdownMenuItem
145
+ });
146
+
147
+ export { DropdownMenu, DropdownMenu as default };
148
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/DropdownMenu/index.tsx"],"sourcesContent":[null],"names":["_jsx"],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ 'use client';
2
+ var styles = {"field_container":"field-module_field_container__mYSRK","field_label":"field-module_field_label__HK1Z5","field_label_disabled":"field-module_field_label_disabled__SkdeT","required_indicator":"field-module_required_indicator__9eYh0","helper_text":"field-module_helper_text__1K3VS","error_text":"field-module_error_text__vwYPc","visually_hidden":"field-module_visually_hidden__ofbl2"};
3
+
4
+ export { styles as default };
5
+ //# sourceMappingURL=field.module.css.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"field.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}
@@ -0,0 +1,31 @@
1
+ 'use client';
2
+ import { jsxs, jsx } from 'react/jsx-runtime';
3
+ import clsx from 'clsx';
4
+ import { useId } from 'react';
5
+ import styles from './field.module.css.mjs';
6
+
7
+ function Field({ children, label, hideLabel = false, error, helperText, required = false, disabled = false, id, className, style, labelElement = 'label' }) {
8
+ const generatedId = useId();
9
+ const inputId = id ?? generatedId;
10
+ const labelId = `${inputId}-label`;
11
+ const errorId = `${inputId}-error`;
12
+ const helperId = `${inputId}-helper`;
13
+ const hasError = typeof error === 'string' && error.length > 0;
14
+ const hasHelper = typeof helperText === 'string' && helperText.length > 0;
15
+ const describedBy = [hasError ? errorId : undefined, hasHelper ? helperId : undefined]
16
+ .filter(Boolean)
17
+ .join(' ') || undefined;
18
+ const sharedLabelClassName = clsx(styles.field_label, {
19
+ [styles.field_label_disabled]: disabled,
20
+ [styles.visually_hidden]: hideLabel
21
+ });
22
+ return (jsxs("div", { className: clsx(styles.field_container, className), style: style, children: [labelElement === 'label' ? (jsxs("label", { htmlFor: inputId, className: sharedLabelClassName, id: labelId, children: [jsx("span", { children: label }), required && (jsx("span", { className: styles.required_indicator, "aria-hidden": 'true', children: "*" }))] })) : (jsxs("span", { className: sharedLabelClassName, id: labelId, children: [jsx("span", { children: label }), required && (jsx("span", { className: styles.required_indicator, "aria-hidden": 'true', children: "*" }))] })), children({
23
+ inputId,
24
+ labelId,
25
+ describedBy,
26
+ hasError
27
+ }), hasError && (jsx("p", { id: errorId, className: styles.error_text, role: 'alert', children: error })), hasHelper && (jsx("p", { id: helperId, className: styles.helper_text, children: helperText }))] }));
28
+ }
29
+
30
+ export { Field as default };
31
+ //# sourceMappingURL=index.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.mjs","sources":["../../../src/Field/index.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx"],"mappings":";;;;;;AAyBA,SAAS,KAAK,CAAC,EACb,QAAQ,EACR,KAAK,EACL,SAAS,GAAG,KAAK,EACjB,KAAK,EACL,UAAU,EACV,QAAQ,GAAG,KAAK,EAChB,QAAQ,GAAG,KAAK,EAChB,EAAE,EACF,SAAS,EACT,KAAK,EACL,YAAY,GAAG,OAAO,EACD,EAAA;AACrB,IAAA,MAAM,WAAW,GAAG,KAAK,EAAE;AAC3B,IAAA,MAAM,OAAO,GAAG,EAAE,IAAI,WAAW;AACjC,IAAA,MAAM,OAAO,GAAG,CAAA,EAAG,OAAO,QAAQ;AAClC,IAAA,MAAM,OAAO,GAAG,CAAA,EAAG,OAAO,QAAQ;AAClC,IAAA,MAAM,QAAQ,GAAG,CAAA,EAAG,OAAO,SAAS;AAEpC,IAAA,MAAM,QAAQ,GAAG,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC;AAC9D,IAAA,MAAM,SAAS,GAAG,OAAO,UAAU,KAAK,QAAQ,IAAI,UAAU,CAAC,MAAM,GAAG,CAAC;IAEzE,MAAM,WAAW,GACf,CAAC,QAAQ,GAAG,OAAO,GAAG,SAAS,EAAE,SAAS,GAAG,QAAQ,GAAG,SAAS;SAC9D,MAAM,CAAC,OAAO;AACd,SAAA,IAAI,CAAC,GAAG,CAAC,IAAI,SAAS;AAE3B,IAAA,MAAM,oBAAoB,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE;AACpD,QAAA,CAAC,MAAM,CAAC,oBAAoB,GAAG,QAAQ;AACvC,QAAA,CAAC,MAAM,CAAC,eAAe,GAAG;AAC3B,KAAA,CAAC;AAEF,IAAA,QACEA,IAAA,CAAA,KAAA,EAAA,EAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,SAAS,CAAC,EAAE,KAAK,EAAE,KAAK,EAAA,QAAA,EAAA,CAClE,YAAY,KAAK,OAAO,IACvBA,gBAAO,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,oBAAoB,EAAE,EAAE,EAAE,OAAO,aACnEC,GAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAO,KAAK,GAAQ,EACnB,QAAQ,KACPA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,kBAAkB,iBAAc,MAAM,EAAA,QAAA,EAAA,GAAA,EAAA,CAEvD,CACR,CAAA,EAAA,CACK,KAERD,IAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,oBAAoB,EAAE,EAAE,EAAE,OAAO,aAChDC,GAAA,CAAA,MAAA,EAAA,EAAA,QAAA,EAAO,KAAK,GAAQ,EACnB,QAAQ,KACPA,GAAA,CAAA,MAAA,EAAA,EAAM,SAAS,EAAE,MAAM,CAAC,kBAAkB,EAAA,aAAA,EAAc,MAAM,EAAA,QAAA,EAAA,GAAA,EAAA,CAEvD,CACR,IACI,CACR,EAEA,QAAQ,CAAC;gBACR,OAAO;gBACP,OAAO;gBACP,WAAW;gBACX;AACD,aAAA,CAAC,EAED,QAAQ,KACPA,GAAA,CAAA,GAAA,EAAA,EAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,CAAC,UAAU,EAAE,IAAI,EAAC,OAAO,YACvD,KAAK,EAAA,CACJ,CACL,EAEA,SAAS,KACRA,WAAG,EAAE,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,EAAA,QAAA,EAC3C,UAAU,GACT,CACL,CAAA,EAAA,CACG;AAEV;;;;"}
@@ -0,0 +1,5 @@
1
+ 'use client';
2
+ var styles = {"icon_svg":"icons-module_icon_svg__Hev3I"};
3
+
4
+ export { styles as default };
5
+ //# sourceMappingURL=icons.module.css.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"icons.module.css.mjs","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;"}