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,58 @@
1
+ 'use client';
2
+ import clsx from 'clsx';
3
+ import React from 'react';
4
+ import { mergeRefs } from './mergeRefs.mjs';
5
+
6
+ function isEventHandler(propName, value) {
7
+ return propName.startsWith('on') && typeof value === 'function';
8
+ }
9
+ function composeEventHandlers(childHandler, slotHandler) {
10
+ return (event) => {
11
+ childHandler?.(event);
12
+ if (!event.defaultPrevented) {
13
+ slotHandler?.(event);
14
+ }
15
+ };
16
+ }
17
+ function mergeProps(slotProps, childProps) {
18
+ const mergedProps = {
19
+ ...slotProps,
20
+ ...childProps
21
+ };
22
+ if (slotProps.style || childProps.style) {
23
+ mergedProps.style = {
24
+ ...slotProps.style,
25
+ ...childProps.style
26
+ };
27
+ }
28
+ if (slotProps.className || childProps.className) {
29
+ mergedProps.className = clsx(slotProps.className, childProps.className);
30
+ }
31
+ for (const propName of Object.keys(slotProps)) {
32
+ const slotValue = slotProps[propName];
33
+ const childValue = childProps[propName];
34
+ if (isEventHandler(propName, slotValue)) {
35
+ mergedProps[propName] = composeEventHandlers(childValue, slotValue);
36
+ }
37
+ }
38
+ return mergedProps;
39
+ }
40
+ function getElementRef(element) {
41
+ return (element.props.ref ??
42
+ element.ref);
43
+ }
44
+ const Slot = React.forwardRef(function Slot({ children, ...slotProps }, forwardedRef) {
45
+ if (!React.isValidElement(children)) {
46
+ return null;
47
+ }
48
+ const mergedProps = mergeProps(slotProps, children.props);
49
+ const childRef = getElementRef(children);
50
+ return React.cloneElement(children, {
51
+ ...mergedProps,
52
+ ref: mergeRefs(childRef, forwardedRef)
53
+ });
54
+ });
55
+ Slot.displayName = 'Slot';
56
+
57
+ export { Slot, composeEventHandlers };
58
+ //# sourceMappingURL=slot.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slot.mjs","sources":["../../../src/utils/slot.tsx"],"sourcesContent":[null],"names":[],"mappings":";;;;;AAWA,SAAS,cAAc,CACrB,QAAgB,EAChB,KAAc,EAAA;IAEd,OAAO,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,OAAO,KAAK,KAAK,UAAU;AACjE;AAEM,SAAU,oBAAoB,CAClC,YAAsC,EACtC,WAAqC,EAAA;IAErC,OAAO,CAAC,KAAK,KAAI;AACf,QAAA,YAAY,GAAG,KAAK,CAAC;AAErB,QAAA,IAAI,CAAE,KAAkB,CAAC,gBAAgB,EAAE;AACzC,YAAA,WAAW,GAAG,KAAK,CAAC;QACtB;AACF,IAAA,CAAC;AACH;AAEA,SAAS,UAAU,CAAC,SAAmB,EAAE,UAAoB,EAAA;AAC3D,IAAA,MAAM,WAAW,GAAa;AAC5B,QAAA,GAAG,SAAS;AACZ,QAAA,GAAG;KACJ;IAED,IAAI,SAAS,CAAC,KAAK,IAAI,UAAU,CAAC,KAAK,EAAE;QACvC,WAAW,CAAC,KAAK,GAAG;YAClB,GAAI,SAAS,CAAC,KAAyC;YACvD,GAAI,UAAU,CAAC;SAChB;IACH;IAEA,IAAI,SAAS,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,EAAE;AAC/C,QAAA,WAAW,CAAC,SAAS,GAAG,IAAI,CAC1B,SAAS,CAAC,SAA+B,EACzC,UAAU,CAAC,SAA+B,CAC3C;IACH;IAEA,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE;AAC7C,QAAA,MAAM,SAAS,GAAG,SAAS,CAAC,QAAQ,CAAC;AACrC,QAAA,MAAM,UAAU,GAAG,UAAU,CAAC,QAAQ,CAAC;AAEvC,QAAA,IAAI,cAAc,CAAC,QAAQ,EAAE,SAAS,CAAC,EAAE;YACvC,WAAW,CAAC,QAAQ,CAAC,GAAG,oBAAoB,CAC1C,UAAsC,EACtC,SAAS,CACV;QACH;IACF;AAEA,IAAA,OAAO,WAAW;AACpB;AAEA,SAAS,aAAa,CACpB,OAA2B,EAAA;AAE3B,IAAA,QACG,OAAO,CAAC,KAAsC,CAAC,GAAG;QAClD,OAAmD,CAAC,GAAG;AAE5D;AAMO,MAAM,IAAI,GAEb,KAAK,CAAC,UAAU,CAAyB,SAAS,IAAI,CACxD,EAAE,QAAQ,EAAE,GAAG,SAAS,EAAE,EAC1B,YAAY,EAAA;IAEZ,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;AACnC,QAAA,OAAO,IAAI;IACb;IAEA,MAAM,WAAW,GAAG,UAAU,CAC5B,SAAqB,EACrB,QAAQ,CAAC,KAAiB,CAC3B;AACD,IAAA,MAAM,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;AAExC,IAAA,OAAO,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE;AAClC,QAAA,GAAG,WAAW;AACd,QAAA,GAAG,EAAE,SAAS,CAAC,QAAkC,EAAE,YAAY;AACrC,KAAA,CAAC;AAC/B,CAAC;AAED,IAAI,CAAC,WAAW,GAAG,MAAM;;;;"}
package/dist/index.d.ts CHANGED
@@ -1,5 +1,31 @@
1
- import * as react_jsx_runtime from 'react/jsx-runtime';
2
- import React from 'react';
1
+ import React, { ReactNode, CSSProperties } from 'react';
2
+
3
+ type AccordionType = 'single' | 'multiple';
4
+ type AccordionProps = React.HTMLAttributes<HTMLDivElement> & {
5
+ type?: AccordionType;
6
+ value?: string | string[];
7
+ defaultValue?: string | string[];
8
+ onValueChange?: (value: string | string[]) => void;
9
+ };
10
+ type AccordionRootComponent = React.ForwardRefExoticComponent<Readonly<AccordionProps> & React.RefAttributes<HTMLDivElement>>;
11
+ declare const AccordionRoot: AccordionRootComponent;
12
+ type AccordionItemProps = React.HTMLAttributes<HTMLDivElement> & {
13
+ value: string;
14
+ };
15
+ type AccordionItemComponent = React.ForwardRefExoticComponent<Readonly<AccordionItemProps> & React.RefAttributes<HTMLDivElement>>;
16
+ declare const AccordionItem: AccordionItemComponent;
17
+ type AccordionTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement>;
18
+ type AccordionTriggerComponent = React.ForwardRefExoticComponent<Readonly<AccordionTriggerProps> & React.RefAttributes<HTMLButtonElement>>;
19
+ declare const AccordionTrigger: AccordionTriggerComponent;
20
+ type AccordionContentProps = React.HTMLAttributes<HTMLDivElement>;
21
+ type AccordionContentComponent = React.ForwardRefExoticComponent<Readonly<AccordionContentProps> & React.RefAttributes<HTMLDivElement>>;
22
+ declare const AccordionContent: AccordionContentComponent;
23
+ type AccordionComponent = typeof AccordionRoot & {
24
+ Item: typeof AccordionItem;
25
+ Trigger: typeof AccordionTrigger;
26
+ Content: typeof AccordionContent;
27
+ };
28
+ declare const Accordion: AccordionComponent;
3
29
 
4
30
  type AlertVariant = 'error' | 'success' | 'warning' | 'info';
5
31
  type AlertProps = {
@@ -9,7 +35,25 @@ type AlertProps = {
9
35
  className?: string;
10
36
  style?: React.CSSProperties;
11
37
  };
12
- declare function Alert({ variant, title, children, className, style }: Readonly<AlertProps>): react_jsx_runtime.JSX.Element;
38
+ type AlertComponent = React.ForwardRefExoticComponent<Readonly<AlertProps> & React.RefAttributes<HTMLDivElement>>;
39
+ declare const Alert: AlertComponent;
40
+
41
+ type AvatarSize = 'sm' | 'md' | 'lg';
42
+ type AvatarStatus = 'online' | 'offline' | 'idle' | 'dnd';
43
+ type AvatarProps = React.HTMLAttributes<HTMLSpanElement> & {
44
+ src?: string;
45
+ alt?: string;
46
+ fallback?: string;
47
+ size?: AvatarSize;
48
+ status?: AvatarStatus;
49
+ };
50
+ type AvatarComponent = React.ForwardRefExoticComponent<Readonly<AvatarProps> & React.RefAttributes<HTMLSpanElement>>;
51
+ declare const Avatar: AvatarComponent;
52
+
53
+ type PolymorphicRef<Element extends React.ElementType> = React.ComponentPropsWithRef<Element>['ref'];
54
+ type PolymorphicComponentProps<Element extends React.ElementType, OwnProps extends object = Record<string, never>> = OwnProps & {
55
+ as?: Element;
56
+ } & Omit<React.ComponentPropsWithoutRef<Element>, keyof OwnProps | 'as'>;
13
57
 
14
58
  type ButtonVariant = 'primary' | 'secondary' | 'ghost' | 'destructive';
15
59
  type ButtonSize = 'sm' | 'md' | 'lg';
@@ -22,14 +66,37 @@ type ButtonBaseProps = {
22
66
  className?: string;
23
67
  style?: React.CSSProperties;
24
68
  };
25
- type ButtonProps<E extends ButtonElement = 'button'> = ButtonBaseProps & {
26
- as?: E;
27
- } & Omit<React.ComponentPropsWithRef<E>, 'as' | 'className' | 'style' | 'ref' | 'disabled'>;
28
- type ButtonComponent = <E extends ButtonElement = 'button'>(props: Readonly<ButtonProps<E>> & {
29
- ref?: React.Ref<E extends 'a' ? HTMLAnchorElement : HTMLButtonElement>;
30
- }) => React.ReactElement | null;
69
+ type ButtonProps<E extends ButtonElement = 'button'> = PolymorphicComponentProps<E, ButtonBaseProps>;
70
+ type ButtonComponent = (<E extends ButtonElement = 'button'>(props: Readonly<ButtonProps<E>> & {
71
+ ref?: PolymorphicRef<E>;
72
+ }) => React.ReactElement | null) & {
73
+ displayName?: string;
74
+ };
31
75
  declare const Button: ButtonComponent;
32
76
 
77
+ type CardProps = React.HTMLAttributes<HTMLDivElement>;
78
+ type CardRootComponent = React.ForwardRefExoticComponent<Readonly<CardProps> & React.RefAttributes<HTMLDivElement>>;
79
+ declare const CardRoot: CardRootComponent;
80
+ type CardHeaderProps = React.HTMLAttributes<HTMLDivElement>;
81
+ type CardHeaderComponent = React.ForwardRefExoticComponent<Readonly<CardHeaderProps> & React.RefAttributes<HTMLDivElement>>;
82
+ declare const CardHeader: CardHeaderComponent;
83
+ type CardTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
84
+ type CardTitleComponent = React.ForwardRefExoticComponent<Readonly<CardTitleProps> & React.RefAttributes<HTMLHeadingElement>>;
85
+ declare const CardTitle: CardTitleComponent;
86
+ type CardContentProps = React.HTMLAttributes<HTMLDivElement>;
87
+ type CardContentComponent = React.ForwardRefExoticComponent<Readonly<CardContentProps> & React.RefAttributes<HTMLDivElement>>;
88
+ declare const CardContent: CardContentComponent;
89
+ type CardFooterProps = React.HTMLAttributes<HTMLDivElement>;
90
+ type CardFooterComponent = React.ForwardRefExoticComponent<Readonly<CardFooterProps> & React.RefAttributes<HTMLDivElement>>;
91
+ declare const CardFooter: CardFooterComponent;
92
+ type CardComponent = typeof CardRoot & {
93
+ Header: typeof CardHeader;
94
+ Title: typeof CardTitle;
95
+ Content: typeof CardContent;
96
+ Footer: typeof CardFooter;
97
+ };
98
+ declare const Card: CardComponent;
99
+
33
100
  type CheckboxSize = 'sm' | 'md' | 'lg';
34
101
  type CheckboxProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size' | 'className' | 'style'> & {
35
102
  label: string;
@@ -39,7 +106,8 @@ type CheckboxProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' |
39
106
  className?: string;
40
107
  style?: React.CSSProperties;
41
108
  };
42
- declare const Checkbox: React.ForwardRefExoticComponent<Readonly<CheckboxProps> & React.RefAttributes<HTMLInputElement>>;
109
+ type CheckboxComponent = React.ForwardRefExoticComponent<Readonly<CheckboxProps> & React.RefAttributes<HTMLInputElement>>;
110
+ declare const Checkbox: CheckboxComponent;
43
111
 
44
112
  type Variant = 'default' | 'outlined';
45
113
  type ChipElement = 'button' | 'div' | 'span' | 'a';
@@ -50,15 +118,245 @@ type ChipBaseProps = {
50
118
  style?: React.CSSProperties;
51
119
  className?: string;
52
120
  };
53
- type ChipProps<E extends ChipElement = 'span'> = ChipBaseProps & {
54
- as?: E;
121
+ type ChipProps<E extends ChipElement = 'span'> = PolymorphicComponentProps<E, ChipBaseProps & {
55
122
  onClick?: React.MouseEventHandler<ChipElementNode<E>>;
56
- } & Omit<React.ComponentPropsWithRef<E>, 'as' | 'children' | 'className' | 'style' | 'onClick' | 'ref'>;
57
- type ChipComponent = <E extends ChipElement = 'span'>(props: Readonly<ChipProps<E>> & {
123
+ children?: never;
124
+ }>;
125
+ type ChipComponent = (<E extends ChipElement = 'span'>(props: Readonly<ChipProps<E>> & {
58
126
  ref?: React.Ref<ChipElementNode<E>>;
59
- }) => React.ReactElement | null;
127
+ }) => React.ReactElement | null) & {
128
+ displayName?: string;
129
+ };
60
130
  declare const Chip: ChipComponent;
61
131
 
132
+ type DialogProps = {
133
+ open?: boolean;
134
+ defaultOpen?: boolean;
135
+ onOpenChange?: (open: boolean) => void;
136
+ children: React.ReactNode;
137
+ };
138
+ type DialogRootComponent = {
139
+ (props: Readonly<DialogProps>): React.JSX.Element;
140
+ displayName?: string;
141
+ };
142
+ declare const DialogRoot: DialogRootComponent;
143
+ type DialogTriggerProps = {
144
+ children: React.ReactNode;
145
+ asChild?: boolean;
146
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'>;
147
+ type DialogTriggerComponent = React.ForwardRefExoticComponent<Readonly<DialogTriggerProps> & React.RefAttributes<HTMLElement>>;
148
+ declare const DialogTrigger: DialogTriggerComponent;
149
+ type DialogContentProps = React.HTMLAttributes<HTMLDivElement> & {
150
+ closeLabel?: string;
151
+ closeOnEscape?: boolean;
152
+ closeOnOverlayClick?: boolean;
153
+ hideCloseButton?: boolean;
154
+ containerClassName?: string;
155
+ };
156
+ type DialogContentComponent = React.ForwardRefExoticComponent<Readonly<DialogContentProps> & React.RefAttributes<HTMLDialogElement>>;
157
+ declare const DialogContent: DialogContentComponent;
158
+ type DialogHeaderProps = React.HTMLAttributes<HTMLDivElement>;
159
+ type DialogHeaderComponent = React.ForwardRefExoticComponent<Readonly<DialogHeaderProps> & React.RefAttributes<HTMLDivElement>>;
160
+ declare const DialogHeader: DialogHeaderComponent;
161
+ type DialogTitleProps = React.HTMLAttributes<HTMLHeadingElement>;
162
+ type DialogTitleComponent = React.ForwardRefExoticComponent<Readonly<DialogTitleProps> & React.RefAttributes<HTMLHeadingElement>>;
163
+ declare const DialogTitle: DialogTitleComponent;
164
+ type DialogDescriptionProps = React.HTMLAttributes<HTMLParagraphElement>;
165
+ type DialogDescriptionComponent = React.ForwardRefExoticComponent<Readonly<DialogDescriptionProps> & React.RefAttributes<HTMLParagraphElement>>;
166
+ declare const DialogDescription: DialogDescriptionComponent;
167
+ type DialogBodyProps = React.HTMLAttributes<HTMLDivElement>;
168
+ type DialogBodyComponent = React.ForwardRefExoticComponent<Readonly<DialogBodyProps> & React.RefAttributes<HTMLDivElement>>;
169
+ declare const DialogBody: DialogBodyComponent;
170
+ type DialogFooterProps = React.HTMLAttributes<HTMLDivElement>;
171
+ type DialogFooterComponent = React.ForwardRefExoticComponent<Readonly<DialogFooterProps> & React.RefAttributes<HTMLDivElement>>;
172
+ declare const DialogFooter: DialogFooterComponent;
173
+ type DialogComponent = typeof DialogRoot & {
174
+ Trigger: typeof DialogTrigger;
175
+ Content: typeof DialogContent;
176
+ Header: typeof DialogHeader;
177
+ Title: typeof DialogTitle;
178
+ Description: typeof DialogDescription;
179
+ Body: typeof DialogBody;
180
+ Footer: typeof DialogFooter;
181
+ };
182
+ declare const Dialog: DialogComponent;
183
+
184
+ type DropdownMenuPlacement = 'top' | 'right' | 'bottom' | 'left';
185
+ type DropdownMenuProps = {
186
+ open?: boolean;
187
+ defaultOpen?: boolean;
188
+ onOpenChange?: (open: boolean) => void;
189
+ placement?: DropdownMenuPlacement;
190
+ offset?: number;
191
+ closeOnEscape?: boolean;
192
+ closeOnOutsideClick?: boolean;
193
+ children: React.ReactNode;
194
+ };
195
+ type DropdownMenuRootComponent = {
196
+ (props: Readonly<DropdownMenuProps>): React.JSX.Element;
197
+ displayName?: string;
198
+ };
199
+ declare const DropdownMenuRoot: DropdownMenuRootComponent;
200
+ type DropdownMenuTriggerProps = {
201
+ children: React.ReactNode;
202
+ asChild?: boolean;
203
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'>;
204
+ type DropdownMenuTriggerComponent = React.ForwardRefExoticComponent<Readonly<DropdownMenuTriggerProps> & React.RefAttributes<HTMLElement>>;
205
+ declare const DropdownMenuTrigger: DropdownMenuTriggerComponent;
206
+ type DropdownMenuContentProps = React.HTMLAttributes<HTMLMenuElement>;
207
+ type DropdownMenuContentComponent = React.ForwardRefExoticComponent<Readonly<DropdownMenuContentProps> & React.RefAttributes<HTMLMenuElement>>;
208
+ declare const DropdownMenuContent: DropdownMenuContentComponent;
209
+ type DropdownMenuItemProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
210
+ destructive?: boolean;
211
+ disabled?: boolean;
212
+ onSelect?: () => void;
213
+ };
214
+ type DropdownMenuItemComponent = React.ForwardRefExoticComponent<Readonly<DropdownMenuItemProps> & React.RefAttributes<HTMLButtonElement>>;
215
+ declare const DropdownMenuItem: DropdownMenuItemComponent;
216
+ type DropdownMenuComponent = typeof DropdownMenuRoot & {
217
+ Trigger: typeof DropdownMenuTrigger;
218
+ Content: typeof DropdownMenuContent;
219
+ Item: typeof DropdownMenuItem;
220
+ };
221
+ declare const DropdownMenu: DropdownMenuComponent;
222
+
223
+ type FieldRenderProps = {
224
+ inputId: string;
225
+ labelId: string;
226
+ describedBy?: string;
227
+ hasError: boolean;
228
+ };
229
+ type FieldProps = {
230
+ children: (props: Readonly<FieldRenderProps>) => ReactNode;
231
+ label: string;
232
+ hideLabel?: boolean;
233
+ error?: string;
234
+ helperText?: string;
235
+ required?: boolean;
236
+ disabled?: boolean;
237
+ id?: string;
238
+ className?: string;
239
+ style?: CSSProperties;
240
+ labelElement?: 'label' | 'span';
241
+ };
242
+ declare function Field({ children, label, hideLabel, error, helperText, required, disabled, id, className, style, labelElement }: Readonly<FieldProps>): ReactNode;
243
+
244
+ type IconSizeToken = 'xs' | 'sm' | 'md' | 'lg' | 'xl';
245
+ type IconStrokeToken = 'thin' | 'regular' | 'bold';
246
+ type IconProps = {
247
+ size?: IconSizeToken | number;
248
+ strokeWidth?: IconStrokeToken | number;
249
+ title?: string;
250
+ className?: string;
251
+ style?: React.CSSProperties;
252
+ };
253
+ declare function CloseIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
254
+ declare function ChevronDownIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
255
+ declare function CheckIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
256
+ declare function MinusIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
257
+ declare function CircleXIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
258
+ declare function CircleCheckIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
259
+ declare function TriangleAlertIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
260
+ declare function CircleInfoIcon({ size, strokeWidth, title, className, style }: Readonly<IconProps>): React.JSX.Element;
261
+ type IconsMap = {
262
+ CloseIcon: typeof CloseIcon;
263
+ ChevronDownIcon: typeof ChevronDownIcon;
264
+ CheckIcon: typeof CheckIcon;
265
+ MinusIcon: typeof MinusIcon;
266
+ CircleXIcon: typeof CircleXIcon;
267
+ CircleCheckIcon: typeof CircleCheckIcon;
268
+ TriangleAlertIcon: typeof TriangleAlertIcon;
269
+ CircleInfoIcon: typeof CircleInfoIcon;
270
+ };
271
+ declare const Icons: IconsMap;
272
+
273
+ type PopoverPlacement = 'top' | 'right' | 'bottom' | 'left';
274
+ type PopoverProps = {
275
+ open?: boolean;
276
+ defaultOpen?: boolean;
277
+ onOpenChange?: (open: boolean) => void;
278
+ placement?: PopoverPlacement;
279
+ offset?: number;
280
+ closeOnEscape?: boolean;
281
+ closeOnOutsideClick?: boolean;
282
+ children: React.ReactNode;
283
+ };
284
+ type PopoverRootComponent = {
285
+ (props: Readonly<PopoverProps>): React.JSX.Element;
286
+ displayName?: string;
287
+ };
288
+ declare const PopoverRoot: PopoverRootComponent;
289
+ type PopoverTriggerProps = {
290
+ children: React.ReactNode;
291
+ asChild?: boolean;
292
+ } & Omit<React.ButtonHTMLAttributes<HTMLButtonElement>, 'children'>;
293
+ type PopoverTriggerComponent = React.ForwardRefExoticComponent<Readonly<PopoverTriggerProps> & React.RefAttributes<HTMLElement>>;
294
+ declare const PopoverTrigger: PopoverTriggerComponent;
295
+ type PopoverContentProps = React.HTMLAttributes<HTMLDivElement>;
296
+ type PopoverContentComponent = React.ForwardRefExoticComponent<Readonly<PopoverContentProps> & React.RefAttributes<HTMLDivElement>>;
297
+ declare const PopoverContent: PopoverContentComponent;
298
+ type PopoverComponent = typeof PopoverRoot & {
299
+ Trigger: typeof PopoverTrigger;
300
+ Content: typeof PopoverContent;
301
+ };
302
+ declare const Popover: PopoverComponent;
303
+
304
+ type ProgressSize = 'sm' | 'md' | 'lg';
305
+ type ProgressProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'children' | 'className' | 'style'> & {
306
+ value?: number;
307
+ max?: number;
308
+ indeterminate?: boolean;
309
+ label?: string;
310
+ showValue?: boolean;
311
+ size?: ProgressSize;
312
+ className?: string;
313
+ style?: React.CSSProperties;
314
+ barClassName?: string;
315
+ };
316
+ type ProgressComponent = React.ForwardRefExoticComponent<Readonly<ProgressProps> & React.RefAttributes<HTMLDivElement>>;
317
+ declare const Progress: ProgressComponent;
318
+
319
+ type RadioGroupOrientation = 'vertical' | 'horizontal';
320
+ type RadioOption = {
321
+ value: string;
322
+ label: string;
323
+ description?: string;
324
+ disabled?: boolean;
325
+ };
326
+ type RadioGroupProps = Omit<React.HTMLAttributes<HTMLDivElement>, 'onChange' | 'defaultValue' | 'className' | 'style' | 'children'> & {
327
+ label: string;
328
+ options: ReadonlyArray<RadioOption>;
329
+ value?: string;
330
+ defaultValue?: string;
331
+ onChange?: React.ChangeEventHandler<HTMLInputElement>;
332
+ hideLabel?: boolean;
333
+ helperText?: string;
334
+ error?: string;
335
+ disabled?: boolean;
336
+ required?: boolean;
337
+ orientation?: RadioGroupOrientation;
338
+ name?: string;
339
+ id?: string;
340
+ className?: string;
341
+ style?: React.CSSProperties;
342
+ };
343
+ type RadioGroupComponent = React.ForwardRefExoticComponent<Readonly<RadioGroupProps> & React.RefAttributes<HTMLDivElement>>;
344
+ declare const RadioGroup: RadioGroupComponent;
345
+
346
+ type SelectSize = 'sm' | 'md' | 'lg';
347
+ type SelectProps = Omit<React.SelectHTMLAttributes<HTMLSelectElement>, 'size' | 'className' | 'style'> & {
348
+ label: string;
349
+ hideLabel?: boolean;
350
+ error?: string;
351
+ helperText?: string;
352
+ placeholder?: string;
353
+ size?: SelectSize;
354
+ className?: string;
355
+ style?: React.CSSProperties;
356
+ };
357
+ type SelectComponent = React.ForwardRefExoticComponent<Readonly<SelectProps> & React.RefAttributes<HTMLSelectElement>>;
358
+ declare const Select: SelectComponent;
359
+
62
360
  type SkeletonShape = 'rectangle' | 'circle';
63
361
  type SkeletonProps = {
64
362
  width?: string | number;
@@ -67,7 +365,18 @@ type SkeletonProps = {
67
365
  className?: string;
68
366
  style?: React.CSSProperties;
69
367
  };
70
- declare function Skeleton({ width, height, shape, className, style }: Readonly<SkeletonProps>): react_jsx_runtime.JSX.Element;
368
+ type SkeletonComponent = React.ForwardRefExoticComponent<Readonly<SkeletonProps> & React.RefAttributes<HTMLSpanElement>>;
369
+ declare const Skeleton: SkeletonComponent;
370
+
371
+ type SpinnerSize = 'sm' | 'md' | 'lg';
372
+ type SpinnerProps = {
373
+ size?: SpinnerSize | number;
374
+ label?: string;
375
+ className?: string;
376
+ style?: React.CSSProperties;
377
+ };
378
+ type SpinnerComponent = React.ForwardRefExoticComponent<Readonly<SpinnerProps> & React.RefAttributes<HTMLOutputElement>>;
379
+ declare const Spinner: SpinnerComponent;
71
380
 
72
381
  type SwitchSize = 'sm' | 'md' | 'lg';
73
382
  type SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'size' | 'className' | 'style'> & {
@@ -77,7 +386,48 @@ type SwitchProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 's
77
386
  className?: string;
78
387
  style?: React.CSSProperties;
79
388
  };
80
- declare const Switch: React.ForwardRefExoticComponent<Readonly<SwitchProps> & React.RefAttributes<HTMLInputElement>>;
389
+ type SwitchComponent = React.ForwardRefExoticComponent<Readonly<SwitchProps> & React.RefAttributes<HTMLInputElement>>;
390
+ declare const Switch: SwitchComponent;
391
+
392
+ type TabsProps = React.HTMLAttributes<HTMLDivElement> & {
393
+ value?: string;
394
+ defaultValue?: string;
395
+ onValueChange?: (value: string) => void;
396
+ };
397
+ type TabsRootComponent = React.ForwardRefExoticComponent<Readonly<TabsProps> & React.RefAttributes<HTMLDivElement>>;
398
+ declare const TabsRoot: TabsRootComponent;
399
+ type TabsListProps = React.HTMLAttributes<HTMLDivElement>;
400
+ type TabsListComponent = React.ForwardRefExoticComponent<Readonly<TabsListProps> & React.RefAttributes<HTMLDivElement>>;
401
+ declare const TabsList: TabsListComponent;
402
+ type TabsTriggerProps = React.ButtonHTMLAttributes<HTMLButtonElement> & {
403
+ value: string;
404
+ };
405
+ type TabsTriggerComponent = React.ForwardRefExoticComponent<Readonly<TabsTriggerProps> & React.RefAttributes<HTMLButtonElement>>;
406
+ declare const TabsTrigger: TabsTriggerComponent;
407
+ type TabsContentProps = React.HTMLAttributes<HTMLDivElement> & {
408
+ value: string;
409
+ };
410
+ type TabsContentComponent = React.ForwardRefExoticComponent<Readonly<TabsContentProps> & React.RefAttributes<HTMLDivElement>>;
411
+ declare const TabsContent: TabsContentComponent;
412
+ type TabsComponent = typeof TabsRoot & {
413
+ List: typeof TabsList;
414
+ Trigger: typeof TabsTrigger;
415
+ Content: typeof TabsContent;
416
+ };
417
+ declare const Tabs: TabsComponent;
418
+
419
+ type TextareaResize = 'none' | 'vertical' | 'horizontal' | 'both';
420
+ type TextareaProps = Omit<React.TextareaHTMLAttributes<HTMLTextAreaElement>, 'className' | 'style'> & {
421
+ label: string;
422
+ hideLabel?: boolean;
423
+ error?: string;
424
+ helperText?: string;
425
+ resize?: TextareaResize;
426
+ className?: string;
427
+ style?: React.CSSProperties;
428
+ };
429
+ type TextareaComponent = React.ForwardRefExoticComponent<Readonly<TextareaProps> & React.RefAttributes<HTMLTextAreaElement>>;
430
+ declare const Textarea: TextareaComponent;
81
431
 
82
432
  type TextInputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' | 'className' | 'style'> & {
83
433
  label: string;
@@ -88,17 +438,65 @@ type TextInputProps = Omit<React.InputHTMLAttributes<HTMLInputElement>, 'type' |
88
438
  className?: string;
89
439
  style?: React.CSSProperties;
90
440
  };
91
- declare const TextInput: React.ForwardRefExoticComponent<Readonly<TextInputProps> & React.RefAttributes<HTMLInputElement>>;
441
+ type TextInputComponent = React.ForwardRefExoticComponent<Readonly<TextInputProps> & React.RefAttributes<HTMLInputElement>>;
442
+ declare const TextInput: TextInputComponent;
92
443
 
93
- type FreyTheme = 'light' | 'dark';
444
+ type FreyTheme = 'light' | 'dark' | 'system';
94
445
  type ThemeProviderProps = {
95
446
  children: React.ReactNode;
96
447
  theme?: FreyTheme;
448
+ highContrast?: boolean;
449
+ id?: string;
450
+ className?: string;
451
+ style?: React.CSSProperties;
452
+ };
453
+ declare function ThemeProvider({ children, theme, highContrast, id, className, style }: Readonly<ThemeProviderProps>): React.JSX.Element;
454
+
455
+ type ToastVariant = 'info' | 'success' | 'warning' | 'error';
456
+ type ToastPlacement = 'top-right' | 'top-left' | 'bottom-right' | 'bottom-left';
457
+ type ToastAction = {
458
+ label: string;
459
+ onClick: () => void;
460
+ };
461
+ type ToastOptions = {
462
+ id?: string;
463
+ title?: string;
464
+ description: string;
465
+ variant?: ToastVariant;
466
+ duration?: number;
467
+ action?: ToastAction;
468
+ };
469
+ type ToastProviderProps = {
470
+ children: React.ReactNode;
471
+ placement?: ToastPlacement;
472
+ limit?: number;
473
+ className?: string;
474
+ style?: React.CSSProperties;
475
+ };
476
+ type ToastContextValue = {
477
+ toast: (options: ToastOptions) => string;
478
+ dismiss: (id: string) => void;
479
+ dismissAll: () => void;
480
+ };
481
+ declare function ToastProvider({ children, placement, limit, className, style }: Readonly<ToastProviderProps>): React.JSX.Element;
482
+ declare function useToast(): ToastContextValue;
483
+
484
+ type TooltipPlacement = 'top' | 'right' | 'bottom' | 'left';
485
+ type TooltipProps = {
486
+ children: React.ReactNode;
487
+ asChild?: boolean;
488
+ content: React.ReactNode;
489
+ open?: boolean;
490
+ defaultOpen?: boolean;
491
+ onOpenChange?: (open: boolean) => void;
492
+ placement?: TooltipPlacement;
493
+ offset?: number;
494
+ delay?: number;
97
495
  id?: string;
98
496
  className?: string;
99
497
  style?: React.CSSProperties;
100
498
  };
101
- declare function ThemeProvider({ children, theme, id, className, style }: Readonly<ThemeProviderProps>): react_jsx_runtime.JSX.Element;
499
+ declare function Tooltip({ children, asChild, content, open, defaultOpen, onOpenChange, placement, offset, delay, id, className, style }: Readonly<TooltipProps>): React.JSX.Element;
102
500
 
103
- export { Alert, Button, Checkbox, Chip, Skeleton, Switch, TextInput, ThemeProvider };
104
- export type { AlertProps, AlertVariant, ButtonElement, ButtonProps, ButtonSize, ButtonVariant, CheckboxProps, CheckboxSize, ChipElement, ChipProps, FreyTheme, SkeletonProps, SkeletonShape, SwitchProps, SwitchSize, TextInputProps, ThemeProviderProps, Variant };
501
+ export { Accordion, Alert, Avatar, Button, Card, CheckIcon, Checkbox, ChevronDownIcon, Chip, CircleCheckIcon, CircleInfoIcon, CircleXIcon, CloseIcon, Dialog, DropdownMenu, Field, Icons, MinusIcon, Popover, Progress, RadioGroup, Select, Skeleton, Spinner, Switch, Tabs, TextInput, Textarea, ThemeProvider, ToastProvider, Tooltip, TriangleAlertIcon, useToast };
502
+ export type { AccordionContentProps, AccordionItemProps, AccordionProps, AccordionTriggerProps, AccordionType, AlertProps, AlertVariant, AvatarProps, AvatarSize, AvatarStatus, ButtonElement, ButtonProps, ButtonSize, ButtonVariant, CardContentProps, CardFooterProps, CardHeaderProps, CardProps, CardTitleProps, CheckboxProps, CheckboxSize, ChipElement, ChipProps, DialogBodyProps, DialogContentProps, DialogDescriptionProps, DialogFooterProps, DialogHeaderProps, DialogProps, DialogTitleProps, DialogTriggerProps, DropdownMenuContentProps, DropdownMenuItemProps, DropdownMenuPlacement, DropdownMenuProps, DropdownMenuTriggerProps, FieldProps, FieldRenderProps, FreyTheme, IconProps, IconSizeToken, IconStrokeToken, PopoverContentProps, PopoverPlacement, PopoverProps, PopoverTriggerProps, ProgressProps, ProgressSize, RadioGroupOrientation, RadioGroupProps, RadioOption, SelectProps, SelectSize, SkeletonProps, SkeletonShape, SpinnerProps, SpinnerSize, SwitchProps, SwitchSize, TabsContentProps, TabsListProps, TabsProps, TabsTriggerProps, TextInputProps, TextareaProps, TextareaResize, ThemeProviderProps, ToastAction, ToastOptions, ToastPlacement, ToastProviderProps, ToastVariant, TooltipPlacement, TooltipProps, Variant };